Linux
從 /etc/hosts 中設置的主機解析中排除子目錄(使用 dnsmasq 或其他任何東西)
我有一個本地開發工具 ( LocalWP ),它通過修改
/etc/hosts
.例如,如果我將我的站點設置為 Local
www.foo.com
,它會將以下內容附加到 hosts 文件中:127.0.0.1 www.foo.com
這很好,但我需要在這個域中排除一個子目錄(不是子域),所以它解析到另一個(原始)IP。
當然,這是不可能的,
etc/hosts
因為它只是一個 DNS 指針,除了域之外不解析任何內容。但是,我想知道是否有另一個工具可以用來從目前hosts
文件中排除子目錄,並將其指向一個新的 IP。我想知道像 dnsmasq 這樣的東西是否可以實現這一點,或者是否有另一種工具可以用於基於路徑解析的某些條件 DNS 行為,而不僅僅是域。
你不能那樣做。
名稱解析由 DNS(
/etc/hosts
或 dnsmasq 或其他)處理,但第一個之後的所有內容都是/
HTTP 協議的一部分,因此由您的 Web 瀏覽器(在您這邊)和 Web 伺服器(在另一邊); DNS(或/etc/hosts
, 或 dnsmasq 或其他)僅用於查找與主機名關聯的 IP 地址,無論您嘗試訪問哪個子目錄,該地址始終相同;只有在建立連接後才會使用實際的 HTTP 路徑。