连接到家庭网络时,MAMP虚拟主机不工作

时间:2012-12-23 20:53:06

标签: apache mamp virtualhost httpd.conf

我在我的笔记本电脑上设置了虚拟主机,我知道工作正常,因为我经常在工作和学校使用它们,但无论出于什么原因,当我在我的父母家连接到他们的家庭网络时,我得到404。如果我从网络断开连接,我会被Apache打败。这是我的httpd.conf文件内容(仅涉及虚拟主机的部分):

NameVirtualHost *
<VirtualHost *>
    DocumentRoot "/Applications/MAMP/htdocs"
    ServerName localhost
</VirtualHost>

<VirtualHost *>
    DocumentRoot "/Users/kyle/Sites/ESA/app/public"
    ServerName esa.loc
    <Directory "/Users/kyle/Sites/ESA/app/public">
        Options Indexes FollowSymLinks
        AllowOverride all
        Order Deny,Allow
        Allow from all
        Allow from 127.0.0.1
    </Directory>
</VirtualHost>

<VirtualHost *>
    DocumentRoot "/Users/kyle/Sites/portfolio-site/public"
    ServerName kyle.loc
    <Directory "/Users/kyle/Sites/portfolio-site/public">
        Options Indexes FollowSymLinks
        AllowOverride all
        Order Deny,Allow
        Allow from all
        Allow from 127.0.0.1
    </Directory>
</VirtualHost>

和我的/ etc / hosts文件:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost esa.loc kyle.loc
255.255.255.255 broadcasthost
::1             localhost esa.loc kyle.loc
fe80::1%lo0     localhost esa.loc kyle.loc

如果您需要更多信息,请告诉我,我会尽力提供。感谢。

编辑:忘了提到我尝试将我的笔记本电脑添加到路由器上的DMZ,但这并没有解决问题。

2 个答案:

答案 0 :(得分:36)

确保取消注释该行

包括conf / extra / httpd-vhosts.conf

在你的apache conf文件中。

答案 1 :(得分:5)

我真的不确定,但Virtualhost是否应该包含有关端口的一些信息?就像:

<VirtualHost *:80>

我认为您可以删除这些行,因为它在您的情况下无用

NameVirtualHost *

Allow from 127.0.0.1 

当你在上面一行使用“全部允许”时,在“允许”中使用ip地址没有任何意义