Tomcat

105 阅读1分钟

疑难杂症

windows中添加删除tomcat服务

windows安装后,进入tomcat安装目录bin

执行命令service.bat install进行服务安装

执行命令service.bat remove进行服务删除

配置控制台用户

默认tomcat-user.xml中的角色和用户配置示例如下:

<role rolename="tomcat"/>

<role rolename="role1"/>

<user username="tomcat" password="<must-be-changed>" roles="tomcat"/>

<user username="both" password="<must-be-changed>" roles="tomcat,role1"/>

<user username="role1" password="<must-be-changed>" roles="role1"/>

修改成如下配置:

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="111111" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

原因如下:

Tomcat 8.x中定义了以下4种角色,所以配置文件中的角色名称不可以随意写

manager-gui - allows access to the HTML GUI and the status pages
manager-script - allows access to the text interface and the status pages
manager-jmx - allows access to the JMX proxy and the status pages
manager-status - allows access to the status pages only

修改完以后重启Tomcat即可登录

控制台乱码

  • 找到tomcat文件位置,进入conf文件下的logging.propertis文件
  • 将所有UTF-8全部修改为GBK
  • 重启服务

管理界面403 Access Denied

  • 概述

    安装tomcat,配置好tomcat环境变量以后,访问manager app页面,出现403 Access Denied错误

  • 解决方法

    首先在conf/tomcat-users.xml文件里面,在</tomcat-users>前面添加如下代码:

<role rolename="manager-gui"/>
<user password="admin" roles="manager-gui" username="tomcat"/>

重启tomcat,重新访问manager app页面。如果此时仍然出现403 Access Denied错误,那么就是访问的ip地受到了限制。打开/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|\d+.\d+.\d+.\d+" />

保存,然后重启tomcat,重新访问manager app页面,OK,问题得到解决