Windows hosts 文件中添加 IP + projecta.hostname.com 的解決方式
問題描述
在 Windows 系統中,當需要將特定的域名(如 projecta.hostname.com)指向某個內網 IP 地址時,通常需要修改 hosts 文件來實現本地 DNS 解析,避免因無法正確解析域名而導致訪問失敗。
解決步驟
1. 以管理員身份打開記事本
- 在開始菜單中搜尋「記事本」,右鍵點擊並選擇「以管理員身份執行」。
2. 打開 hosts 文件
- 在記事本中,選擇「檔案」→「開啟」,導航到
C:\Windows\System32\drivers\etc\目錄。 - 在檔案類型中選擇「所有檔案 (.)」,找到並打開
hosts文件。
3. 添加 IP 與域名映射
在文件末尾添加以下內容:
192.168.x.x projecta.hostname.com
將 192.168.x.x 替換為目標服務器的內網 IP 地址。
4. 保存並關閉文件
5. 刷新 DNS 緩存(可選)
以管理員身份打開命令提示字元,執行:
ipconfig /flushdns
注意事項
- 修改 hosts 文件需要管理員權限。
- 確保 IP 地址和域名正確無誤。
- 此方法適用於臨時或小範圍內網環境,企業環境建議配置內部 DNS 服務器進行集中管理。
背景原理與補充解析
DNS(域名系統)
- DNS 負責將域名解析為 IP 地址。
hosts文件是本地 DNS 映射,優先於外部 DNS 查詢。
SNI(Server Name Indication)
- SNI 允許客戶端在 TLS 握手時告訴服務器它想訪問的域名。
- 正確的 hosts 映射確保瀏覽器能使用正確的域名作為 SNI。
Nginx 配置與作用
- Nginx 根據 Host 與 SNI 來匹配 server 區塊。
- 透過 hosts 映射,Nginx 能接收到正確的域名資訊。
為什麼這樣可以解決問題?
- 內網 DNS 可能無法解析自定義域名。
- hosts 文件能強制本地解析到指定 IP。
- SNI 正確 → Nginx 選對證書與 server block。
- 整體流程確保 HTTPS 正常運作。
此頁面說明了如何在 Windows hosts 文件中添加 IP 與 projecta.hostname.com 的映射,並補充了 DNS、SNI 及 Nginx 的相關知識。