迁移MAMP Pro至新Mac后,用户名不同导致虚拟主机路径错误的简便解决方法
解决MAMP Pro迁移后虚拟主机路径批量更新问题
我太懂你面对100多个虚拟主机的崩溃感了——手动改绝对是噩梦!先给你说清楚为什么改httpd.conf没用:MAMP Pro的Apache配置文件是动态生成的,每次启动服务时,它都会从自己的核心配置文件里重新生成httpd.conf,所以你手动改的内容会被直接覆盖,白忙活一场。
真正的解决方案是直接修改MAMP Pro存储所有虚拟主机配置的plist文件,也就是你提到的settings4.plist,具体步骤如下:
先彻底关闭MAMP Pro
确保MAMP Pro完全退出(包括菜单栏里的图标),不然修改的配置可能会被程序覆盖回去。备份配置文件(重要!)
先给settings4.plist做个备份,防止操作失误:cp ~/Library/Application\ Support/appsolute/MAMP\ PRO/settings4.plist ~/Library/Application\ Support/appsolute/MAMP\ PRO/settings4.plist.backup批量替换旧用户名到新用户名
用终端的sed命令可以一次性替换所有路径里的旧用户名,比手动编辑plist高效太多。假设你的旧用户名是old_user,新用户名是new_user,执行以下命令:sed -i '' 's/\/Users\/old_user\//\/Users\/new_user\//g' ~/Library/Application\ Support/appsolute/MAMP\ PRO/settings4.plist注意:
- 所有斜杠都要加反斜杠转义(
\/),不然sed会识别错误 - Mac系统的
sed需要加-i ''参数,避免自动生成多余的备份文件
- 所有斜杠都要加反斜杠转义(
验证并启动MAMP Pro
重新打开MAMP Pro,进入虚拟主机列表,你会看到所有主机的根目录路径已经自动更新为新用户名的路径了。之后启动Apache服务,应该就能正常访问所有虚拟主机了。
额外提醒:确保你已经把旧用户目录下的所有项目文件夹复制到新用户的对应路径下,不然即使路径改对了,Apache也找不到文件哦。
内容的提问来源于stack exchange,提问作者scottrod
相关产品推荐
相关产品推荐

