![关闭无线后 Mac Apache 服务器不工作](https://linux22.com/image/1446141/%E5%85%B3%E9%97%AD%E6%97%A0%E7%BA%BF%E5%90%8E%20Mac%20Apache%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8D%E5%B7%A5%E4%BD%9C.png)
我在 Mac OS X Yosemite 上设置本地 Apache 服务器时遇到了问题。服务器一直运行良好,直到我需要在没有无线访问的情况下远程工作。我一直在寻找一种解决方案,让服务器在我离线时也能工作,但似乎没有结果。
我的 .conf 中有这些设置
Listen *:80
ServerName localhost
这些在我的主人
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
离线时我可以成功 ping 通 127.0.0.1 但是当我尝试 ping 或 traceroute 到我的一个 vhosts 域时,我显示无法找到主机。
traceroute example.dev
我可以查看哪些设置才能使其离线工作?我需要设置新的网络接口吗?
笔记: 我没有使用 XAMPP 或 MAMP。只是操作系统上预装的 apache 服务器。
答案1
你没有example.dev
在任何地方定义,那么你的计算机如何知道它需要映射到你的机器?我认为它在您的网络中某处定义,然后映射到127.0.0.1
。
(同样,诸如lvh.me
和 之类的域名lvho.st
,又称为本地虚拟主机,是由一些创建它们的人注册的,并且它们的所有子域名都指向127.0.0.1
。)
请.dev
注意建议的级别域。当我在我的计算机上 ping 或挖掘它时,我看到:
dig example.dev
example.dev. 3600 IN A 127.0.53.53
...这个特殊的 IP 地址应该敲响警钟:
127.0.53.53 是一个特殊的 IPv4 地址,它将出现在系统日志中,提醒系统管理员存在潜在的名称冲突问题,以便快速诊断和补救。“53”用作助记符,表示由于使用网络端口 53 进行 DNS 服务而导致的 DNS 相关问题。
我不知道它是如何在我的网络中被这样映射的;也许是因为该.dev
域处于提议状态并且有人已经部分添加了它?顺便说一句:全部 .dev
域名为我映射到该 IP 地址。但仍然127.0.53.53
没有映射到我的本地 Web 服务器。
所以我认为映射example.dev
到127.0.0.1
您的网络中,为了让您的计算机查找名称,它需要网络连接。由于使用.dev
可能会在分配拟议的顶级域时发生冲突,并且您希望在没有网络连接的情况下工作,因此您可以将其他别名添加到主机文件。例如在以下行中127.0.0.1
:
127.0.0.1 localhost my.host www.my.host subdomain2.my.host another-host
如果您需要许多(子)域,您可以看到其发展方向...要在没有网络连接的情况下使用通配符,您可能需要在本地机器上设置一些 DNS 服务器。
要快速查看这是否确实是问题,只需添加example.dev
:
127.0.0.1 localhost example.dev