OSX:Chrome 无法连接到 .localhost-domains。连接被拒绝

问题描述 投票:0回答:2

这把我难住了。

我有一个运行 nginx + php-fpm 的本地开发设置,其中我使用 .localhost 作为每个项目的工作域。昨天,Chrome 停止使用本地域。相反,它只是返回连接被拒绝。 DevTools 将错误显示为

(failed) net::ERR_CONNECTION_RESET

访问 http://127.0.0.1 可以,但当然不适用于本地项目。

Safari 继续使用 .localhost。

Chrome:版本90.0.4430.212(官方版本)(x86_64) 操作系统:macOS 11.4 (20F71)

macos google-chrome localhost ipv6 ipv4
2个回答
0
投票

尝试了几种不同的方法,例如:

  • 更新/etc/hosts
  • 清除 Chrome 的 DNS
    chrome://net-internals/#dns
  • chrome://net-internals/#hsts
  • 中删除域名

从 chrome://net-internals/#events 创建网络日志然后查看不同的事件后找到了解决方案。发现了这个:

t=18295 [st=0] +SOCKET_ALIVE  [dt=4]
                --> source_dependency = 5112 (TRANSPORT_CONNECT_JOB)
t=18295 [st=0]   +TCP_CONNECT  [dt=1]
                  --> address_list = ["[::1]:80","127.0.0.1:80"]
                  --> canonical_name = ""
t=18295 [st=0]      TCP_CONNECT_ATTEMPT  [dt=1]
                    --> address = "[::1]:80"
t=18296 [st=1]   -TCP_CONNECT
                  --> source_address = "[::1]:56378"
t=18296 [st=1]   +SOCKET_IN_USE  [dt=3]
                  --> source_dependency = 5111 (HTTP_STREAM_JOB)
t=18296 [st=1]      SOCKET_BYTES_SENT
                    --> byte_count = 719
t=18298 [st=3]      SOCKET_READ_ERROR
                    --> net_error = -101 (ERR_CONNECTION_RESET)
                    --> os_error = 54
t=18299 [st=4]   -SOCKET_IN_USE
t=18299 [st=4]    SOCKET_POOL_CLOSING_SOCKET
                  --> reason = "Connection was closed when it was returned to the pool"
t=18299 [st=4] -SOCKET_ALIVE

Chrome 似乎默认使用 IPv6。

解决方案

listen [::]:80 ipv6only=off;
添加到 nginx 站点配置并重新启动 nginx。


0
投票

谢谢你!我花了几天时间试图找出为什么我的设置不起作用,这最终解决了它。

© www.soinside.com 2019 - 2024. All rights reserved.