MAMP VirtualHost选择了错误的目录

时间:2013-06-26 14:07:41

标签: apache mamp vhosts hosts

我遇到了MAMP的问题。

我在httpd-vhosts.conf中添加了以下代码行:

<VirtualHost *:80>
    ServerName "site1.dev"
    DocumentRoot "/Users/kevingorjan/site1/public_html/"

    <Directory "/Users/kevingorjan/site1/public_html/">
        Options All
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>

<VirtualHost *:80>
    ServerName "site2.dev"
    DocumentRoot "/Users/kevingorjan/site2/public_html/"

    <Directory "/Users/kevingorjan/site2/public_html/">
        Options All
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>

我更新了我的/ etc / hosts

127.0.0.1 site1.dev
127.0.0.1 site2.dev

当我浏览site1.dev时。一切都按预期进行。服务器加载指定给此URL的正确内容。但是当我浏览site2.dev时,我会从site1.dev收到相同的内容。有什么我想念或做的事情我必须改变配置中的其他东西吗?

提前致谢

*解决方案*

对不起,我发现了问题。 我在Mac上工作,当我的MAMP也在运行时,我正在运行apache。我删除了机器上的apache,现在一切正常。 感谢

3 个答案:

答案 0 :(得分:1)

抱歉,我发现了问题。

我在Mac上工作,我的MAMP也在运行时运行apache。 我删除了机器上的apache,现在一切正常。

由于

答案 1 :(得分:0)

你做错了;)你的virtualhosts文件看起来应该更像这样:

NameVirtualHost *:80 

<Directory "D:/projects/">
  Require local
</Directory> 

<VirtualHost *:80>
 DocumentRoot "D:/projects/project_1/public_html"
 ServerName project_1.dev
</VirtualHost>

<VirtualHost *:80>
 DocumentRoot "D:/projects/project_2/public_html"
 ServerName project_2.dev
</VirtualHost>

如果您使用的是apache&lt; 2.4比替换:

Require local

with:

Order allow,deny
Allow from all

答案 2 :(得分:-1)

在您的主机文件中,请确保为您的网站提供ipv6地址以及ipv4

127.0.0.1 site1.dev
127.0.0.1 site2.dev
::1 site1.dev
::1 site2.dev

您可能不需要vhosts.conf文件中的目录标记

还要确保MAMP在偏好设置面板中使用MySQL和Apache默认端口而不是MAMP默认设置。