1

我在我的 Mac 上运行 Apache 等(实际上是 MAMP,但很快就会被单独的 Apache、PHP、MySQL 取代……),用于在本地/离线测试我的网站。

我希望能够*.dev从以下任何和所有内容测试我的所有本地站点(域),无需更新hots每个设备上的文件(其中一些,例如无根电话,甚至不允许编辑主机文件):

  1. 显然,我的 Mac 本身...
  2. 我的 Mac 连接到的任何本地网络上的任何设备(我的 Mac 不一定总是具有相同的 IP 地址)
  3. 在我的 Mac 上运行的任何虚拟机(在 Parallels 中)——主要是各种版本的 Windows(我的 Mac 在 Parallels 共享网络上总是具有相同的 IP 地址)

现在,我读到 dnsmasq 可能会提供帮助,并已使用 Homebrew 将其安装在我的 Mac 上。我将其设置为在启动时启动,我的dnsmasq.conf内容如下:

address=/.dev/127.0.0.1

这具有允许任何域在我的 Mac 上运行的效果*.dev是一个开始。

接下来,我尝试通过将 DNS 服务器设置为我的 Mac 的本地 IP 地址,使其在 Parallels VM 中工作。但是,这不起作用——因为 dnsmasq127.0.0.1作为任何查找的 IP返回*.dev,但这当然会使 VM 在 VM 本身上查找站点,而不是在我的 Mac 上……这显然不起作用。

所以我有点难过。谁能给我任何提示?有没有办法设置 dnsmasq 来做我想做的事,或者我应该看看另一种方法?

谢谢!

4

1 回答 1

1

我对 Parallels 没有任何经验,但使用 Virtualbox,您可以设置桥接网络连接。我认为 Parallels 也有类似的东西。这将建立一个内部网络(例如在 192.168.1.* 上),您可能可以为其分配固定的 IP 地址。像这样,您可以为 Mac 提供一个固定 IP 地址,您也可以在 dnsmasq 配置中使用该地址 - 但您可能希望为此设置两个 TLD,以便 .dev 可以继续指向 127.0.0.1 而 .devel 指向 192.168.1 .xx。

于 2013-03-06T12:51:49.173 回答