錯誤訊息
Mac 上的「Safari 無法連接伺服器」
Safari 找到了網站的位址,但無法和伺服器建立連線。DNS 沒問題,出錯的是伺服器或通往它的路徑。
症狀
- Safari 顯示:「Safari 無法打開網頁⋯因為 Safari 無法連線到伺服器⋯」。
- 其他網站打得開。
- 位址是本機伺服器,例如
localhost:3000,而伺服器沒有在執行。
可能原因
- 伺服器停擺或拒絕連線。連接埠上沒有東西在監聽,或伺服器拒絕了連線。
- 本機伺服器沒有在執行。使用
localhost位址時,你自己的伺服器必須在執行。請參閱Mac 上的連接埠已被占用。 - 防火牆或過濾器。防火牆、內容過濾器或公司網路都可能阻擋該連接埠。
- VPN 或代理伺服器。流量經過的 VPN 或代理伺服器連不到該伺服器。
- IPv6 路徑故障。網站有 IPv6 位址,但你的網路上 IPv6 無法運作。
如何檢查
在同一個網路的另一台裝置上打開同一個網址。如果也失敗,問題就出在網路或伺服器。
從終端機測試連接埠,逾時時間設為 5 秒。
nc -vz -G 5 example.com 443請求該網頁,並顯示連線的每個步驟。
curl -v -o /dev/null https://example.com先只用 IPv4,再只用 IPv6 試試看。如果只有 IPv6 失敗,請閱讀Mac 上的 IPv6 問題。
curl -4 -I https://example.com curl -6 -I https://example.com如果是本機位址,看看該連接埠上有沒有伺服器在監聽。
lsof -nP -iTCP:3000 -sTCP:LISTEN
如何修正
過幾分鐘後重新載入網頁。忙碌的伺服器可能會恢復。
如果是本機伺服器,就啟動它,然後使用它顯示的連接埠。
如果開啟了 VPN、代理伺服器或安全 App,請暫時關閉進行測試,測試後再重新開啟。
如果只有 IPv6 失敗,請修正 IPv6,或向網路業者回報。請參閱Mac 上的 IPv6 問題。
如果是公司網路阻擋了該網站,請洽詢管理者。
使用 Kilobat
Kilobat 的連線診斷會逐層測試網站:網路、代理伺服器、DNS、規則、IPv4、IPv6、TLS 和伺服器,並指出是哪一層失敗。
kilobat why https://example.com顯示單一 URL 的 DNS、連線、TLS 和第一個位元組的時間。
kilobat http-check https://example.com這些 Kilobat 檢查都是免費的。AI 代理程式可透過 MCP 以
diagnose_connection和diagnose_network執行。請參閱找出某個網站或 API 連不上的原因。
常見問題
為什麼 Safari 找得到伺服器,卻連不上?
找到伺服器靠的是 DNS,連線則是另一個步驟。在這個情況下,DNS 正常,是連線失敗了。
資料來源
- Safari.framework 中的錯誤訊息文字,macOS 27.2(Localizable.strings)
- Apple Developer:URLError.Code cannotConnectToHost (-1004)
- Apple 支援:如果 Mac 上的 Safari 未如預期般運作
- nc(1)、curl(1) 和 lsof(8),macOS 27.2 內建的 man 頁面
資料來源檢查日期:2026年10月29日。man 頁面為 macOS 內建版本;在終端機中用 man <name> 開啟。