我正在編寫一個腳本來在Mamp Pro中創建虛擬主機。我希望它們被創建並出現在我通過GUI手動創建的普通GUI旁邊的GUI中。我發現下列問題上的SO:如何通過命令行shell腳本自動創建MAMP Pro虛擬主機?
這裏是我的調查結果,到目前爲止:
我發現該主機出現在MAMP Pro GUI中:〜/ Library/Application \ Support/appsolute/MAMP \ PRO/settings3.plist;我試着編輯它,但我似乎無法得到正確的條目用命令
PlistBuddy -c 'print ":virtualHosts"' settings3.plist
它說打印:輸入「:virtualHosts」,不存在從我所列出的第二個問題在上面,我發現我可以通過GUI編輯httpd.conf文件(一個在用戶庫中找到,一個在根庫中)。
hosts文件,包括所有的IP地址是在/私營/ etc/hosts中
的問題是死的,即使我評論了最近的一次詢問他是如何解決的更新他的腳本問題到底如何。
最後,我可以輕鬆地將這些值添加到hosts文件和vhosts.conf文件中,以使網站正常工作。我唯一的問題是讓它顯示在MAMP Pro GUI中其他虛擬主機的列表中。
更新:經過進一步的調查和實驗,我意識到創建虛擬主機的過程;當我第一次通過GUI創建主機時,settings3.plist文件得到更新,當我點擊「save」保存更改時,主機和httpd.conf文件會相應更新。我知道settings3.plist可以通過plutil -convert xml1 -o - settings3.plist > test.txt
轉換爲XML,然後編輯它並通過plutil -convert binary -o - test.txt > settings3.plist
將其轉換回二進制。
我的問題是,即使我得到了CP $ UID如何在XML格式中工作的要點,我無法創建一個腳本來展開概念,通過列表檢查值的位置,然後相應地輸入數值。我甚至問了一個問題關於在這裏:https://stackoverflow.com/q/33775025/1934402
確保你使用了file〜/ Library/Application Support/appsolute/MAMP PRO/settings.plist,即檢查你是否在正確的plist文件上工作。在我使用MAMP PRO 2.2的系統(Mac OS X 10.11.1 El Capitan)中,文件是settings.plist,以及我在[自動虛擬主機與MAMP Pro?]答案中的命令(http://stackoverflow.com/questions/ 12359199/automatic-virtual-hosts-with-mamp-pro)工作正常。你在哪個版本的MAMP PRO上/哪個MAC OS X版本?在任何情況下,.plist文件都是一個xml文件,您可以使用編輯器檢查它,甚至編寫一個簡單的腳本來處理它。 – Symvan
我有機會通過朋友使用的MAMP PRO 3.4獲得進一步的瞭解。你確實正在尋找正確的文件,其版本3.x的MAMP PRO是settings3.plist,它是二進制格式屬性列表,而版本2.x的MAMP PRO是settings.plist,並且是一個XML格式屬性列表。我會試着將我的發現放在你的問題的答案中。 – Symvan
我更新了我的問題。 @Symvan另外,我非常感謝你的幫助。 – yaharga