您的位置:首页 > 运维架构 > Tomcat

(踩坑记1)jenkins 编译完成后发布到异地tomcat8.5失败

2017-08-02 00:00 281 查看
摘要: jenkins 持续集成发布war到tomcat 8.5 使用localhost或127.0.0.1可以,使用ip地址失败。其实问题的根本原因是由于8.5的managerUI默认对访问者ip进行了限制,需要进行简单修改。

本人项目中用的springboot的有些功能在低版本的tomcat中不支持,所以将tomcat升级到了tomcat8.5, 升级就就意味着有采坑的风险(不是逼不得已,大家还是用自己熟悉的稳定的技术和工具)。

问题描述:jenkins中 maven编译成功,发布war到tomcat失败,提示403错误。提示这个错误有两个可能:1、tomcat manager-gui用户认证没有开启。2、访问者限制被开启(默认只能127开头的ip地址和0.0.0.0的ip能访问----本人踩的就是第二个)

直接进入主题:jenkins编译后发布war包到tomcat必要条件

1、tomcat需要进行用户认证

2、对应用户需要manager-gui角色

3、如果tomcat版本是8.5,且异地发布(本机,发布到远程tomcat服务器),需要解除manager中的访问限制(8.0及一下版本,默认开放的)

进入tomcat》webapp》manager》META-INF 找到context.xml ,注释或修改valve节点

<Context antiResourceLocking="false" privileged="true" >
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />-->
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tomcat8.5 远程访问