我正在编写一个脚本来在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