在Windows上出现"localhost拒绝连接”的问题

发布时间 2024-01-12 20:03:49作者: -37-

我的问题如下:

我在win11下想使用phpEnv配置php7.4-nginx的环境,通过xdebug用vscode调试,但在配置环境的时候出现了问题,访问默认的localhost站点时出现localhost 已拒绝连接的问题,而使用127.0.0.1会直接访问到D:\Download\phpEnv\server\nginx\html下的index.html

pFCHuWD.png

pFCHZo6.png]

pFCHmFK.png]

默认是80的端口,我尝试切换到1234端口,https://localhost:1234还是已拒绝连接的问题,但是127.0.0.1:1234就可以访问到对应的站点

pFCHnJO.png]

我检查过80端口的占用情况,除nginx外就是pid:4的占用,我按照网络上的教程关闭了IIS,pid:4的占用也消失了,但还是没什么用,后面我发现我anaconda的jupyterlab也打不开了,他使用的是localhost:8888,似乎所有使用到localhost的都不能正常运行了,而自定义的域名还是可以正常在80端口下工作的,但是xdebug无法连接到,调试没有作用,我怀疑是其使用的localhost:9003无法连接,但我切换成127.0.0.1还是无济于事

pFCHVdx.png]

ping localhost也是来自127.0.0.1的回复,在host文件里也添加了127.0.0.1 localhost

pFCHlyd.png]

我尝试过使用phpstudy,但问题还是一样的

解决:

我一开始也是有ping localhost是来自[::1]的问题,我根据这篇博客修改了ipv6与ipv4的解析优先级,解决了这个问题,但我在浏览器中访问localhost还是拒绝连接,因为这个问题出现在我配置php站点的时候,所以我一直以为是nginx或防火墙配置的问题,也一直在尝试调整配置,但还是不行,后来我注意到我的jupyterlab也打不开了,似乎所有使用到localhost的工具都不能正常运行了,我就怀疑是不是localhost在我的edge里不起作用了,根据这一点我最终在stackoverflow上找到了相关问题,其中有一个回答指出了清除 Chrome 缓存,特别是 cookie 和缓存的文件

pFCHMSe.png]

根据这一点我直接清楚了我edge的cookie和其他缓存,结果这下刷新就可以正常打开了

edge://settings/privacy?search=清除浏览数据

pFCHQQH.png]

同时注意要是没有配置http到https的重定向需要使用http访问,可以看上面的图片,在有问题的时候edge会自己使用https