Apache 2.2 localhost VirtualHosts问题

时间:2009-09-21 14:02:56

标签: macos apache2 virtualhost apache

我正在尝试使用虚拟主机设置我的开发机器,因此我可以使用简单的URL访问我的开发项目,例如http:// project.dev/而不是整个http:// 127.0.0.1/dev/path / to / root / of / project / url的类型。

现在,我知道有很多关于这方面的教程和问题已经得到解答,但在尝试了很多这些教程和问题之后,我觉得我在这里跑圈子。

问题很简单:在设置我的主机文件和我的虚拟主机后,任何访问虚拟主机的尝试都会无法显示我的服务器 DocumentRoot的内容。

我的主持人档案:

127.0.0.1       localhost
127.0.0.1       mydomain.dev
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0     localhost

我的httpd-vhosts.conf

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot /Users/pilot/Sites/
</Virtualhost>

<VirtualHost *:80>
    ServerName mydomain.dev
    DocumentRoot /Users/pilot/Sites/devel/vytamin/dev/
</VirtualHost>

我确定httpd-vhosts.conf文件是在我的httpd.conf中加载的,如果我将虚拟主机文件根目录指向错误的文件夹,我会收到警告。

我尝试将localhost虚拟主机设置为以下内容,但没有任何成功。

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot /Users/pilot/Sites/devel
</Virtualhost>

以下URL显示我的httpd.conf文件中定义的服务器的DocumentRoot,似乎忽略了我的VirtualHosts中定义的DocumentRoot。

http:// 127.0.0.1/
http:// localhost/
http:// mydomain.dev/

我在Mac OSX 10.5 Leopard上运行Apache2.2,但不是mac OS附带的。我在/ usr / local / apache2和web共享下编译了自己 IS禁用

我的设置没有任何问题,所以我希望社区能够做到! 谢谢你的帮助!

1 个答案:

答案 0 :(得分:3)

好的,我发现了问题!

上面的配置非常好,只是我的apache没有正确重启。 apache_ctl gracefulapache_ctl restart都没有终止我运行的所有httpd进程,因此无法正确重新加载配置文件中的更改。 一旦我杀死剩余的进程并且真的重新启动了apache,它就有用了......

解决了,但我觉得愚蠢的发现了!

现在我有一个守护进程的情况要解决!