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

Posted

技术标签:

【中文标题】连接到家庭网络时,MAMP 虚拟主机不工作【英文标题】:MAMP virtual hosts not working when connected to home network 【发布时间】:2012-12-10 11:29:35 【问题描述】:

我在我的笔记本电脑上设置了虚拟主机,我知道它可以正常工作,因为我经常将它们用于工作和学校,但无论出于何种原因,当我在父母家连接到他们的家庭网络时,我都会收到 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,但这并没有解决问题。

【问题讨论】:

【参考方案1】:

我真的不确定,但 Virtualhost 不应该包含一些关于端口的信息吗?某样东西:

<VirtualHost *:80>

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

NameVirtualHost *

Allow from 127.0.0.1 

当您在上面的行中使用“allow from all”时,在“Allow”中使用 ip 地址没有任何意义

【讨论】:

【参考方案2】:

确保取消注释该行

包括 conf/extra/httpd-vhosts.conf

在你的 apache conf 文件中。

【讨论】:

我猜路径是“conf/apache/extra/httpd-vhosts.conf”。

以上是关于连接到家庭网络时,MAMP 虚拟主机不工作的主要内容,如果未能解决你的问题,请参考以下文章

从家庭网络上的 grunt Web 服务器限制 http:// 连接到远程托管 Web 服务器的正确 CORS 条目是啥?

无法从连接到 Azure *** 的本地计算机(在家庭网络上)访问专用 AKS 群集

手机上的 AirConsole 对开发人员不起作用?

请问Mstsc远程桌面怎么使用,对家庭用户(局域网用户)来讲,有用吗?

无法连接到 Anyconnect *** 上的 docker

通过共享同一网络的 Windows 计算机连接到 mac localhost