在tomcat中发布项目时,用IP地址不能访问项目而用localhost可以访问成功,很急

在tomcat中发布项目时,用IP地址不能访问项目而用localhost和127.0.0.1时可以访问成功


最近在开发项目中,遇到的一个问题是:
在 tomcat中发布一个web项目,但是发布成功后,只能用http://localhost:8080/fm访问项目,不能用
http://127.0.0.1:8080/fm访问项目,也不能用本地的IP地址访问(http://192.16/8.0.191:8080/fm)
起初认为是防火墙的原因,但是防火墙是关闭的,应该没有影响;
后来认为是w......
答案就在这里:在tomcat中发布项目时,用IP地址不能访问项目而用localhost时可以访问成功
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

(借鉴而得的解决方法)

  1. 使用cmd命令netstat -n, 查看tomcat地址绑定, 发现是绑定到::1, IPv6.

  2. 配置tomcat的server.xml, 更改connector配置, 端口不用改, 加上address="0.0.0.0", 使其绑定到IPv4, 如下

(借鉴的解决方案)
使用cmd命令netstat -n, 查看tomcat地址绑定, 发现是绑定到::1, IPv6;
配置tomcat的server.xml, 更改connector配置, 端口不用改, 加上address="0.0.0.0", 使其绑定到IPv4
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
重启tomcat, 再次使用netstat -n, 查看tomcat地址绑定, 已变为IPv4.
此问题即可迎刃而解。

http://blog.csdn.net/cailiwei712/article/details/7567018
外网发布

把防火墙关了 ,就解决下跨域。
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
试试行不行。

IP地址看错了吧,要不就在host文件夹里配置一下