错误信息

Mac 上提示“Safari 浏览器无法连接服务器”

Safari 找到了网站的地址,但与服务器的连接没有建立。DNS 正常,失败的是服务器或通往它的路径。

适用于:macOS 13 Ventura 及更高版本上的 Safari。提示文本已在 macOS 27.2 上核对。核查日期:2026年10月29日

症状

  • Safari 提示:“Safari can’t open the page … because Safari can’t connect to the server …”(Safari 无法打开网页……因为 Safari 无法连接服务器……)。
  • 其他网站可以打开。
  • 地址是本地服务器,例如 localhost:3000,而该服务器没有运行。

可能的原因

  • 服务器宕机或拒绝连接。端口上没有程序在监听,或服务器拒绝了连接。
  • 本地服务器没有运行。对于 localhost 地址,必须运行你自己的服务器。请参阅Mac 上的端口已被占用。
  • 防火墙或过滤器。防火墙、内容过滤器或公司网络可能会封锁该端口。
  • VPN 或代理。流量经过的 VPN 或代理无法连接到服务器。
  • IPv6 路径不通。网站有 IPv6 地址,但当前网络上的 IPv6 无法使用。

如何检查

  1. 在同一网络的另一台设备上打开同一地址。如果也失败,问题出在网络或服务器上。

  2. 在“终端”中测试该端口,超时设为 5 秒。

    nc -vz -G 5 example.com 443
  3. 请求该页面,并显示连接的每一步。

    curl -v -o /dev/null https://example.com
  4. 先只用 IPv4 尝试,再只用 IPv6 尝试。如果只有 IPv6 失败,请阅读Mac 上的 IPv6 问题。

    curl -4 -I https://example.com
    curl -6 -I https://example.com
  5. 对于本地地址,查看是否有服务器在监听该端口。

    lsof -nP -iTCP:3000 -sTCP:LISTEN

如何修复

  1. 几分钟后重新载入页面。繁忙的服务器可能会恢复。

  2. 对于本地服务器,先启动它,再使用它输出的端口。

  3. 如果打开了 VPN、代理或安全 App,请暂时关闭它进行测试,测试后再重新打开。

  4. 如果只有 IPv6 失败,修复 IPv6 或向你的网络服务商报告。请参阅Mac 上的 IPv6 问题。

  5. 如果是公司网络屏蔽了该网站,请询问管理员。

使用 Kilobat

  1. Kilobat 的连接诊断会逐层测试该网站:网络、代理、DNS、规则、IPv4、IPv6、TLS 和服务器,并指出失败的那一层。

    kilobat why https://example.com
  2. 显示某个 URL 的 DNS、连接、TLS 和首字节时间。

    kilobat http-check https://example.com
  3. Kilobat 的这些检查都是免费的。AI 智能体可以通过 MCP 用 diagnose_connection 和 diagnose_network 运行它们。请参阅找出某个网站或 API 连不上的原因。

常见问题

为什么 Safari 找到了服务器却连不上?

找到服务器靠的是 DNS,连接是另外一步。这里 DNS 成功了,连接失败了。

参考资料

参考资料核查于 2026年10月29日。man 手册页为 macOS 自带版本;在“终端”中用 man <name> 打开。