tomcat发布项目时,localhost可以访问,用ip地址不能访问,同时其他电脑也不能访问。
Posted ngulc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat发布项目时,localhost可以访问,用ip地址不能访问,同时其他电脑也不能访问。相关的知识,希望对你有一定的参考价值。
最近在开发项目中,遇到的一个问题是:在 tomcat中发布一个web项目,但是发布成功后,只能用http://localhost:8080/aml访问项目,不能用http://172.0.0.1:8080/aml访问项目,也不能用本地的IP地址访问,同时其他同事的电脑也不能访问。
起初以为是防火墙的问题,但是关闭防火墙后,依旧是不能访问。同时,关闭不允许远程访问也不可以。后来在查看资料的时候知道,tomcat绑定IP地址的问题,而win7默认使用的是ipv6协议,通过ping localhost查看IP是哪种格式,得知::1 IPv6。
先解决方案:
1:启动tomcat,使用cmd命令:D:\tomcat\bin>netstat -an | findstr "8080",查看tomcat地址绑定。
2:配置tomcat的server.xml, 更改connector配置, 端口不用改, 加上address="0.0.0.0", 使其绑定到IPv4。配置如下:
1 <Connector port="8080" address="0.0.0.0" protocol="HTTP/1.1" 2 connectionTimeout="20000" 3 redirectPort="8443" />
3:重启tomcat,再次查看tomcat地址绑定。发现绑定地址已变为0.0.0.0:8080,ipv4协议。
另外,address属性的修改还可以让tomcat绑定指定的IP,如:address="127.0.0.1",这样tomcat就只监听IP地址127.0.0.1的8080端口了。(默认情况下,它会监听所有的IP。)
以上是关于tomcat发布项目时,localhost可以访问,用ip地址不能访问,同时其他电脑也不能访问。的主要内容,如果未能解决你的问题,请参考以下文章
idea发布项目使用tomcat8.1.5,但是导入idea的是tomcat7,发布之后访问不了localhost:8080主页
我使用springboot内置的tomcat部署项目,为啥直接输入localhost:8081/hello就可以访问
tomcat去除项目名。我想输入http://localhost:8080直接访问我的项目
eclipse中的内置浏览器输入localhost:8080也可以正常访问吗?