localhost:8080可以正常访问项目,
但是通过nginx访问80端口,只能访问磁盘上的静态文件,转发到tomcat的请求却始终timeout.
从ip这个角度出发。ping 一下localhost,打开cmd命令窗。
是不是觉得哪里有点不对劲,以前ping,返回结果都是很长类似这样 来自xxx.xxx.xxx.xxx的恢复:时间<2ms。现在确实【::1】。
没错,问题就出现在这里,win10默认的是ipv6的解析,而ipv6默认解析到【::1】而不是127.0.0.1。所以我们nginx配置文件里面是连接不到本地的tomcat,一直处于timeout的状态,这只是一个猜测,下面我们来印证一下,看看是不是这么回事。
去注册表修改ip4的优先级。
打开运行窗口,输入【regedit】
在这个路径下面:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\Parameters,新建【DWORD(32位)值(D)】,一定要新建这个哦,否则无效。
然后窗口右侧会出现你新建的键值,如图
选中【新值#1】F2修改键值名称为:DisabledComponents,如下图
选中,右键,修改如下图。然后点击确定。
重启电脑,我们再来ping一下localhost.
现在看上去是不是顺眼很多了,没错我们已经将localhost默认解析到127.0.0.1这样我们在来通过nginx访问。
浏览量: 49