0

我有一个在我们公司网络中运行的 Tomcat 实例。

目前用户可以通过输入机器名称来访问它: http://machine:8080 或使用完全限定名称:( http://machine.company.com:8080 这只能在内部访问)

但是,我希望他们只使用全名。有没有办法在 tomcat(可能在 server.xml 或 conf.xml 中的某处)中强制进行全局 301 重定向,通过短名称访问的任何资源都将转发(301)到长名称?

4

1 回答 1

1

我不喜欢这样的全局配置的东西,但你可以在 Tomcat 中全局配置过滤器conf/web.xml。您可以为这种特定情况编写自己的过滤器,或使用 url-rewrite (http://www.tukey.org/urlrewrite/) 为您完成。在任何一种情况下,您都必须将您的代码(lr url-rewrite 库)放在 Tomcat 的lib目录中(yuck)或修改 catalina.properties 以重新引入“通用”类加载器并将您的代码(或库)放在那里(也很糟糕)。

如果您只部署了一个 Web 应用程序,那么您可以在一个 Web 应用程序中配置所有这些,而不必为上述所有“恶心”而烦恼。

此外,如果您在 Tomcat 前面有一个 Web 服务器(例如,Apache httpd),那么您当然可以在那个级别上做这种事情。

于 2012-06-11T20:43:55.433 回答