您好我刚刚安装了Tomcat并且正在尝试启动并运行但是每当我尝试导航到manager / html时它会给我这个错误“请求的资源(/ manager / html)不可用”。
主页,/ docs,/ examples都运行正常,我的日志没有显示任何内容。我该如何解决?我在Windows 7 64位上使用Tomcat 6.0.20和JDK 1.6.0_21。
答案 0 :(得分:25)
您必须检查tomcat中文件夹manager
中是否包含名称为webapps
的文件夹。
Rubens-MacBook-Pro:tomcat rfanjul$ ls -la webapps/
total 16
drwxr-xr-x 8 rfanjul staff 272 21 May 12:20 .
drwxr-xr-x 14 rfanjul staff 476 21 May 12:22 ..
-rw-r--r--@ 1 rfanjul staff 6148 21 May 12:20 .DS_Store
drwxr-xr-x 19 rfanjul staff 646 17 Feb 15:13 ROOT
drwxr-xr-x 51 rfanjul staff 1734 17 Feb 15:13 docs
drwxr-xr-x 6 rfanjul staff 204 17 Feb 15:13 examples
drwxr-xr-x 7 rfanjul staff 238 17 Feb 15:13 host-manager
drwxr-xr-x 8 rfanjul staff 272 17 Feb 15:13 manager
之后,您将确保在文件conf/tomcat-users.xml
中为您的用户提供此permmint:
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="test" password="test" roles="admin-gui,manager-gui"/>
再次重启tomcat和stat tomcat。
sh bin/shutdown.sh
sh bin/startup.sh
我希望这对你有用。
答案 1 :(得分:10)
您必须先启用访问权限:Configuring Manager Application Access
答案 2 :(得分:5)
当tomcat经理没有启动时,我有了这个情况。我的日志/ manager.DDD-MM-YY.log中有这个例外:
org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter CSRF
java.lang.ClassNotFoundException: org.apache.catalina.filters.CsrfPreventionFilter
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
...
引发此异常是因为我使用的是没有CSRF防护过滤器的tomcat版本。 Tomcat 6.0.24中没有CSRF防护过滤器。它的第一个版本是6.0.30版本(至少根据更改日志)。因此,Tomcat Manager与我使用的Tomcat版本不兼容。我在这里挖掘了对这个问题的描述:http://blog.techstacks.com/.m/2009/05/tomcat-management-setting-up-tomcat/comments/
修复它的步骤:
现在您应该能够访问tomcat manager。
答案 3 :(得分:2)
我的问题/解决方案非常令人尴尬,但谁知道......也许它发生在其他人身上:
我的解决方案:关闭代理
在过去的两个小时里,我一直想知道为什么我的经理不会加载。 (根缓存以便加载)。我已将浏览器的代理设置为代理流量到我家。 :/
答案 4 :(得分:2)
即使我的tomcat-users.xml文件设置正确,我也无法登录管理器应用程序。问题是tomcat配置为从数据库中获取用户。一个知道这一切如何运作的员工离开了公司,所以我不得不追踪这一切。
如果您在项目web.xml中有一个类似这样的Web应用程序:
<security-role>
<role-name>manager</role-name>
</security-role>
你应该知道这是使用与tomcat相同的系统登录!因此,无论您的经理角色用户在哪里定义,您都应该在这里定义您的经理角色和用户。 在server.xml中我找到了:
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="org.gjt.mm.mysql.Driver"
connectionURL="jdbc:mysql://localhost/<DBName>?user=<DBUser>&password=<DBPassword>"
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />
这告诉我有一个存储所有用户和角色的数据库。这会覆盖tomcat-users.xml文件。除非该Realm被注释掉,否则该文件中的任何内容都不起作用。解决方案是将您的tomcat用户添加到users表,将manager-gui角色添加到user_roles表:
insert into users (user_name, user_pass) values ('tomcat', '<changeMe>');
insert into user_roles (user_name, role_name) values ('tomcat', 'manager-gui');
你还应该有一个&#34; manager-gui&#34;角色表中的rolename。如果它不存在,请添加它。希望这有助于某人。
答案 5 :(得分:1)
您的网站为空,因为../webapps
文件夹中缺少 ROOT 目录。有关具体位置,请参阅tomcat documentation。
答案 6 :(得分:0)
就我而言,文件夹是_Manager。 在我将其重命名为Manager之后,它起作用了。
现在,我看到登录弹出窗口,我从conf / tomcat-users.xml输入凭据,一切正常。
答案 7 :(得分:0)
在tomcat-users中输入角色和用户后,如果仍然无法正常工作,请确保您的tomact服务器位置指向正确的服务器位置
答案 8 :(得分:0)
我今天遇到了这个问题。我正在使用Centos7,解决方案是安装 tomcat-admin-webapp 软件包。
yum install tomcat-webapps tomcat-admin-webapps
答案 9 :(得分:-5)
尝试将localhost替换为您的“计算机名称”,即http://localhost:8080
至http://system09:8080