Virtualhost

localhost 域繞過 /etc/hosts 文件

  • February 25, 2021

我正在嘗試使用.localhostFQDN 創建一個開發環境。

我正在使用Flywheel 的 Local,它基本上是 MAMP,它是一個 GUI,可以讓我創建 vagrant box。我可以創建一個站點,例如example.dev並將其指向/etc/hosts文件中的本地 IP 地址,並且效果很好:

192.168.95.100 example.dev 

我可以將它更改為其他類似的東西example.test,它仍然很好用:

192.168.95.100 example.test

如果我將其更改.localhost為 403 禁止錯誤。

192.168.95.100 example.localhost

我的/etc/hosts檔案中沒有其他記錄。我正在嘗試確定域在哪個階段被路由到其他地方。

什麼會阻止 localhost 域映射到正確的 URL?

你不能。已localhost保留為特殊用途域名( RFC 6761, 6.3 )。

localhost.和屬於其中的任何名稱.localhost.在以下方面是特殊的: - -

  1. 名稱解析 API 和庫應將名稱辨識localhost 為特殊名稱,並應始終為地址查詢返回 IP 環回地址,並為所有其他查詢類型返回否定響應。名稱解析 API 不應向其 localhost配置的記憶體 DNS 伺服器發送名稱查詢。

您可能將此與RFC 6762.local中廣泛用於專用網路和為多播 DNS (mDNS)保留的特殊用途域名混淆了。使用 時,請盡量避免使用全域 DNS 解析這些名稱。在 Active Directory中使用是非常糟糕的實現導致對 L根名稱伺服器的不必要查詢的典型範例。.local.local

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