【发布时间】:2012-01-04 10:22:22
【问题描述】:
我在Tomcat中部署了我的应用,应用路径是:
http://localhost:8080/myapp
但我想限制我的用户看不到 Tomcat 主页,即如果他们输入:
http://localhost:8080
主页不应出现。我该怎么办?
【问题讨论】:
标签: tomcat
我在Tomcat中部署了我的应用,应用路径是:
http://localhost:8080/myapp
但我想限制我的用户看不到 Tomcat 主页,即如果他们输入:
http://localhost:8080
主页不应出现。我该怎么办?
【问题讨论】:
标签: tomcat
参考How to Change Default Homepage in Tomcat
编辑:
链接已损坏,您可以尝试以下操作:
最简单的方法是让 Tomcat 主页 (TOMCAT_HOME/webapps/ROOT/index.jsp) 重定向到您的起始页。
或者,如果您只有一个网络应用,您可以将其移至 ROOT 网络应用。
【讨论】:
将 ROOT 应用重命名为另一个文件夹名称(如果您不想使用 tomcat manager 应用管理 tomcat,则将其删除)
把你想看的应用放在ROOT文件夹http://localhost:8080
【讨论】:
webapps 文件夹中的ROOT 应用程序重命名为ROOT-Closed 并将examples 重命名为examples-closed 对我有用。您可以将其重命名为您想要的任何名称。
使用其他内容上传 ROOT.war,或者尝试从 webapps 中删除文件夹 ROOT/
【讨论】:
我刚刚发现您可以在应用程序处于生产状态时以管理员身份连接并停止欢迎页面。
如果有人再次尝试访问欢迎页面 (http://localhost:8080),它将无法正常工作:
【讨论】:
显然有多种选择可以做到这一点。为我编译的一个非常好的参考是:
https://www.owasp.org/index.php/Securing_tomcat
这里主要讨论 Tomcat 5.5。但我看不出为什么其中大部分不适用于更高版本的 Tomcat,即 6 或 7。
【讨论】:
我认为问题的作者专门询问了禁用 Tomcat 主页,而不是重定向它。 我在 ibm 网站上找到了有用的提示。我试过了,它对我有用。 步骤如下:
<!--
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
-->
IBM 参考网页:Disabling the Apache Tomcat default home page on ...
【讨论】:
重命名根文件夹内的索引文件。
【讨论】:
您可能认为只需更改 $CATALINA_HOME/webapps/ROOT/index.jsp 处的 jsp 页面即可。在这里我发现不是这样的!页面内容在ROOT Web 应用程序servlet 中编译。为了让 Tomcat 引用 jsp 页面,我们需要阻止这个 servlet 被编译。
在$CATALINA_HOME/webapps/ROOT/WEB-INF/web.xml找到ROOT web应用程序的配置文件,并简单地注释掉以下代码片段:
<!-- Comment this section so I can change the default index.jsp homepage
<servlet>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<servlet-class>org.apache.jsp.index_jsp</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<url-pattern>/index.jsp</url-pattern>
</servlet-mapping>
-->
这将禁用index_jsp servlet。现在,当您重新启动 Tomcat Web 应用程序服务器时,它应该会编译并加载默认的 $CATALINA_HOME/webapps/ROOT/index.jsp 页面。
【讨论】: