在捣腾Tomcat 7的时候遇到一个问题,很多人对tomcat自带的web管理工具不是很熟悉,因为一直都是手动修改配置文件。这次有点好奇想看看tomcat的web管理界面,因为之前一直用weblogic都是用web界面管理的。带着无限的好奇,我开始了对tomcat7的探索之旅。
先说明一下,本人是从官网上下载的tomcat 7.0的安装版,操作系统Windows 7,JDK 6_22,在安装的时候,中间有一步,提示输入用户名和密码的,但是是可选的,我就没有填,省略了;要选择FULL模式(即完全安装)安装;安装完成之后,兴致勃勃的打开了http://localhost:8080/ ,看到期望出现的菜单“Tomcat Manager”和“Host Manager”,点击其中一个,弹出对话框,提示输入用户名和密码,这才想起刚才安装的时候省略的那一步,记得conf文件夹下面有个tomcat-users.xml的文件,应该就是保存这些用户的地方,打开一看里面是空的,从网上搜索了一堆,无论怎么弄,都进不去,提示403错误,这可怎么办呢。卸载!重装!这次我把用户名和密码都设置了,tomcat-users.xml里面多了一个用户的标签,但是输入用户名和密码还是提示403错误。这次我试着去看页面上提示的错误,出现了意想不到的效果,这上面竟然提示着怎么去设置角色和用户,试着设置了manager的角色和用户,结果OK!下面把设置好的代码贴出来:
tomcat-users.xml
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="tomcat" password="s3cret" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>
这样设置好了以后重新启动,输入用户名和密码,OK了!这个“tomcat”用户拥有所有的权限,因为所有的角色都让他继承了,也可以设置不同的用户让其继承有限的角色,这样可以做到权限管理。
这个也适用于apache-tomcat-6.0.32。