我发布这篇文章是因为我最近在使用 MAMP 堆栈设置虚拟主机时遇到了很多麻烦,这是由于 Apple 对 Mac OS 10.8 默认 Apache2 安装上可用 PHP 版本的限制。
这是一个关于如何操作的快速指南,我在 Stack Overflow 上找到了这个问题的解决方案:
您可以将其视为对我有用的内容的汇编,因为接受的答案没有效果,而是那些分数明显较低的答案。
同样,我看到的每份指南都没有提及用户在来源问题上回答的一些要点。
Step 1:安装并配置 Apache。
确保你指定了你想要监听的端口,对我来说我指定了8080
。这一系列说明就是这种情况。
Listen 8080
- 默认值为 80
Step 2:编辑你的/etc/hosts
文件来欺骗你的环回地址,127.0.0.1
127.0.0.1 localhost
127.0.0.1 some.example # domain-name.domain-TLD
127.0.0.1 www.some.example # The same as the above line, but with www. prefixed
您确实应该在 Web 服务器、Apache 或 Nginx(或您使用的任何其他服务器)上添加子域的句柄。将 www 路由到非 www 的东西。
Step 3:在 Apache 上启用虚拟主机导入。
- 打开你的
httpd.conf
文件位于 Apache2 的子目录中。通常在/conf
- 取消注释类似于以下内容的行:
Include conf/extra/httpd-vhosts.conf
- 还要取消注释此模块导入:
LoadModule log_config_module modules/mod_log_config.so
Step 4:配置您的虚拟主机文件
- 找到您的虚拟主机配置,
httpd-vhosts.conf
,您可以注释掉文件中的两个示例虚拟主机。通常在/conf/extra
- 将您自己的虚拟主机复制到此模板中的文件中:
<VirtualHost *:80> # Change the 80 to the number Apache2 "Listen"s on. In my case, 8080
ServerName SERVER-ADDRESS # E.g. mywebsite.local
ServerAlias WWW.SERVER-ADDRESS # E.g. www.mywebsite.local
DocumentRoot " SERVER-FILE-ROOT " # E.g. "Users/user-name/Sites"
<Directory /> # This should be a full path, though
Require all granted # Required for permission errors
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride none
</Directory>
</VirtualHost>
你完成了!
根据您的喜好编辑虚拟主机后,您就完成了,只需重新启动 Apache 即可享受。
本指南已包含已实施的修复,但如果您仍然遇到权限错误:
- 您必须确保您的
DocumentRoot
不在您的用户明确拥有的任何文档内。如果需要的话,给"Read Only"
访问 Mac 上的“Everyone”特定文件夹,例如“文件”或“电影”等......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)