如何更改Tomcat ROOT,管理器,主机管理器目录(菜单)的路由

时间:2019-03-15 09:21:59

标签: tomcat tomcat9

我已将Tomcat的ROOT应用更改为/ panel目录,因为我为已部署的应用使用了“ /”目录。 如何配置Tomcat以其他方式访问主菜单(ROOT应用)和管理器(管理器,主机管理器),因为当前在尝试导航/ manager时出现错误

我正在访问http://localhost:8080/panel/上的主页面板

<Context path="/panel" docBase="ROOT"></Context>

点击“管理应用”会将我路由到http://localhost:8080/manager/html并给出错误消息

  

HTTP状态404 –找不到

     

类型状态报告

     

找不到消息

     

说明原始服务器未找到当前表示   目标资源或不愿透露其存在

我尝试添加

<Context path="/manager" docBase="manager"></Context>

但这给了我错误

  

HTTP状态500 –内部服务器错误

     

类型异常报告

     

消息错误实例化servlet类   [org.apache.catalina.manager.HTMLManagerServlet]

     

说明服务器遇到意外情况,   阻止它满足请求。

     

例外

     

javax.servlet.ServletException:实例化servlet类时出错   [org.apache.catalina.manager.HTMLManagerServlet]     org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:607)     org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)     org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)     org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)     org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)     org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)     org.apache.coyote.AbstractProtocol $ ConnectionHandler.process(AbstractProtocol.java:834)     org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1415)     org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)     java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)     java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)     org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)     java.lang.Thread.run(Thread.java:748)

     

根本原因

     

java.lang.SecurityException:访问类[class   org.apache.catalina.manager.HTMLManagerServlet]被禁止。它是一个   受限类(实现ContainerServlet接口)。网路   必须将应用程序配置为特权才能加载它     org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:607)     org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)     org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)     org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)     org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)     org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)     org.apache.coyote.AbstractProtocol $ ConnectionHandler.process(AbstractProtocol.java:834)     org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1415)     org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)     java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)     java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)     org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)     java.lang.Thread.run(Thread.java:748)

     

注意服务器中提供了根本原因的完整堆栈跟踪   日志

1 个答案:

答案 0 :(得分:0)

一个选项; 在您的server.xml中:

<Context path="/manager" privileged="true"/>