web-applications - 如何将不同的 URL 定向到同一 Tomcat 应用程序中的不同页面

标签 web-applications tomcat redirect dns

我在 webapps/ROOT 文件夹中有一个 tomcat 网络应用程序。并且可以使用 http://myapp.mydomain.com 访问它.

但是需要绑定(bind)http://mypage1.mydomain.com到 html 页面 webapps/ROOT/mypage1.html

绑定(bind)http://mypage2.mydomain.com到 html 页面 webapps/ROOT/mypage2.html。

如何将这些名称绑定(bind)到同一应用程序中的不同页面?它与tomcat中的虚拟主机有关吗?或者可以简单地使用我的域名托管服务提供商设置来完成吗?

提前致谢。

最佳答案

Tomcat 通过多重声明完全支持虚拟主机;但是,除非我弄错了,否则每个 webapp 都是单独部署在每个虚拟主机上的。换句话说,您将部署同一个 WAR 两次,一次在 mypage1.mydomain.com 上,一次在 mypage2.mydomain.com 上。这不是一个好主意,尤其是当您需要在应用程序内的不同请求之间共享 session 数据时。

另一种丑陋的方法是发出从请求到 mypage1 和 mypage2 的重定向 (302) 到“规范”名称 myapp。这会增加您服务器上的负载,但只要您的客户端支持重定向,它就是一种快速而肮脏的工作解决方案。

最后,干净的方法可能是在您的 Tomcat 前面设置一个网络服务器并重写请求,并且 Tomcat 永远不会在主机名中看到 mypage1 和 mypage2。我不记得如何使用 mod_rewrite 更改主机,但应该是可能的。

关于web-applications - 如何将不同的 URL 定向到同一 Tomcat 应用程序中的不同页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5190317/

相关文章:

java - Enterprise Java Bean 在 Java EE 中有多重要?

web-applications - 如何自定义我的 web.xml 配置

javascript - React-Router:将我的 url 从 hashHistory 重定向到 browserHistory

php - HTML 表单两个 Action

.htaccess - 通配符子域和子文件夹作为 .htaccess 中的参数

java - 如何更改Weblogic中的Java/JVM版本

java - GlassFish 禁止 403 错误页面

java - 在 tomcat 上运行的 jHipster 客户端不与在开发模式下运行的服务器通信 mvnw

java - Ehcache 集群需要很长时间才能在 Tomcat 上启动

不为上下文根请求发送 Tomcat session cookie