如何让虚拟主机在 OS X Lion 中工作?
Posted
技术标签:
【中文标题】如何让虚拟主机在 OS X Lion 中工作?【英文标题】:How to get a virtual host to work in OS X Lion? 【发布时间】:2012-01-17 05:28:04 【问题描述】:我正在尝试在我的 Mac OS X 10.7 安装上设置一个虚拟主机。 我正在使用 VirtualHostX 来管理我的 /etc/hosts 和 httpd-vhosts.conf 文件。 目前,我的 httpd-vhosts.conf 文件如下所示:
NameVirtualHost *:80
<Directory "/Users/yuval/Sites/mysite/">
Allow From All
AllowOverride All
</Directory>
<VirtualHost *:80>
ServerName "mysite.dev"
DocumentRoot "/Users/yuval/Sites/mysite"
</VirtualHost>
我的 /etc/hosts 文件中有这个:
# VHX START
127.0.0.1 mysite.dev
fe80::1%lo0 mysite.dev
# VHX STOP
我在系统偏好设置下激活了网络共享,并且我知道 apache 正在运行。但是,当我导航到 127.0.0.1 或 mysite.dev 时,我得到以下信息:
禁止
您无权访问此服务器上的 /。
我对 /Users/yuval/Sites/mysite 的权限是 755。尝试将它们更改为 777 也无济于事。请注意,我选择的任何文件夹都会发生这种情况——我在 /Users/yuval/Sites/mysite 中没有 .htaccess 文件。
更新:检查 apache 错误,这些是出现的日志:
[Fri Dec 09 17:59:27 2011] [error] [client 127.0.0.1] (13)Permission denied:
access to / denied
[Fri Dec 09 17:59:27 2011] [error] [client 127.0.0.1] (13)Permission denied:
access to /favicon.ico denied
看起来很明显,vhosts + hosts 代码在实际确定地址存在时正在发挥作用,但由于某种原因,这不起作用。有什么想法吗?
【问题讨论】:
请看我的编辑。只需Permission denied: access to / denied
【参考方案1】:
确保index.html
文件位于/Users/yuval/Sites/mysite/
目录中。
或启用目录索引:
<Directory "/Users/yuval/Sites/mysite/">
Options +Indexes
Allow From All
AllowOverride All
</Directory>
您还可以设置DirectoryIndex
选项来查找index.html
以外的默认文件:http://httpd.apache.org/docs/current/mod/mod_dir.html
编辑
看到您的错误消息 - 这看起来不像是目录索引问题。
在此 ServerFault 答案中提到的 /Users/yuval
目录中尝试 chmod 755
:https://***.com/a/1241319/212700
还要检查/Users/yuval/Sites/
目录中的任何.htaccess
文件,因为Apache 也会检查这些文件。
【讨论】:
感谢您的建议。目录中有一个 index.php 文件,但我继续添加了一个 .html 文件。依然没有。然后我启用了索引并重新启动了 apache,但仍然没有运气。还有其他想法吗? 你已经把问题搞定了!确实是父目录权限问题!非常感谢! chmod 755 位于父文件夹上。【参考方案2】:我唯一要做的就是重新指向我的自定义 vhost 目录(并重新启动 apache。)
我试图指向 ~/Sites/vhosts 而不是 /Users/[Username]/Sites/vhosts 我保存所有 .conf 文件的位置,因此出现配置错误。我正在寻找 apache 日志,并从 apache 文档中了解到 httpd -S
,它告诉我配置问题的确切位置。
网络上的博客中有很多错误信息,所以我在这里为像我这样的 apache 菜鸟发布这个。
httpd -S
# fix the issues
sudo apachectl restart
【讨论】:
以上是关于如何让虚拟主机在 OS X Lion 中工作?的主要内容,如果未能解决你的问题,请参考以下文章
如何让 matplotlib.pyplot 在 OSX 的虚拟环境中工作?
使用 AMPPS 在 mac (Mac OS X Lion 10.70.4) 上设置虚拟主机
如何配置虚拟主机在 Xampp 的 htdocs 目录中工作?
如何让 MSSQL 服务容器在 Azure DevOps 管道中工作?
如何让 ibm_db 或 PyDB2 python 模块在 Mac OS X 10.7 Lion 中与 DB2 一起使用?