今天在Jenkins实现自动部署功能,一切配置工作准备就绪之后,兴高采烈的点击进行构建,结果报The username you provided is not allowed to use the text-based Tomcat Manager异常
原因
tomcat8进行部署时,要给管理用户赋予manager-script角色,manager-gui角色...还要运行远程访问```
**解决方案**
1.找到你的tomcat/conf/tomcat-users.xml,在<tomcat-users></tomcat-users>中加入以下配置
```powershell
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<!--创建tomcat用户,密码也是tomcat,用于权限验证同时赋予上面的权限-->
<user username="tomcat" password="tomcat" roles="manager-gui,manager- script,tomcat,admin-gui,admin-script"/>
2.如果上面的配置还不行,我们还得进行下面的操作,找到文件tomcat/webapps/manager/META-INF/context.xml
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
注释掉即可,因为这配置只允许本地访问
3.最后,我也是配置了上面两个配置发现还是不行,结果是复制的时候粗心大意,下面的位置复制到配置文件中多了一个空格,其实上面两个配置就可以解决问题了,所以多留意一个心眼