Domain-Name-System

本地 MAMP Web 伺服器 URL 的 DNS 查找需要 5 秒以上

  • January 9, 2014

我在 OS X 10.7 上執行 MAMP。我在 Apache 中設置了一個虛擬主機,如下所示:

<Directory "/sites/example.com/">
Allow From All
AllowOverride All
</Directory>
<VirtualHost *:80>
   ServerName "example.local"
   ServerAlias "www.example.local"
   DocumentRoot "/sites/example.com"
</VirtualHost>

在 /etc/hosts 我添加了這個:

127.0.0.1 example.local

一切正常,可能在一兩個星期前非常快。我不確定發生了什麼變化,但正如 Firebug 和 Chrome 報告的那樣,現在幾乎每次載入頁面時請求的 DNS 查找部分都需要 5 秒以上的時間。

ping 本地地址看起來不錯:

->ping example.local
PING example.local (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.073 ms

以下是 Chrome 顯示的內容:

Chrome 網路面板輸出

如果我在第一次連接後立即刷新,DNS 查找似乎被記憶體了。但是稍後再次刷新會導致再次緩慢查找。

任何幫助,將不勝感激!

嗯,example.local通常是一個 mDNS(Zeroconf)地址,因此您的 mDNS 配置很可能以某種方式損壞,並且在它回落到/etc/hosts.

為什麼不直接添加localhost為 aServerAlias並通過該名稱訪問它?否則,至少使用一個沒有對您的系統具有不同含義的頂級域的域。

Yuo 還可以使用沒有 .something 的域,因此只需example沒有.something 即可.local。正如這裡提到的http://www.justincarmony.com/blog/2011/07/27/mac-os-x-lion-etc-hosts-bugs-and-dns-resolution/它似乎 OSX 使用 .local 作為 Bonjour .

我只使用沒有 .local 的範例進行了測試,它似乎正在解決這個問題。

引用自:https://serverfault.com/questions/293275