我曾多次尝试解决这个问题,但都无果。
目前,我已将 apache 设置为将标签处的所有 URL 转发到 tomcat。不幸的是,tomcat 通过(子目录,而不是部署我的 war 的根目录)/portal/
接收这些请求。/portal/appName
webapps
webapps
有没有我没看到的简单解决方案?我一直尝试使用 mod_rewrite,^/portal/ $ /
但没有得到预期的结果(也许我做错了?)。
答案1
使用 mod_jk 你会想做这样的事情:-
RewriteEngine On
RewriteRule ^/(.*)$ /portal/$1 [PT]
需要 PT 标志,以便它能够通过并命中 JkMount 内容。这将重写所有内容以转到 tomcat 中的门户上下文,如果 tomcat 中只有一个应用程序,这很好,但如果您开始添加其他上下文,则需要添加 RewriteCond。有关完整的 mod_rewrite 文档,请查看:-http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule。
您还需要将其添加到您的 mod_jk 配置中
JkOptions +ForwardURICompat
与 Apache 中的所有事物一样,在弄清楚发生了什么的同时,日志记录是你的朋友:-
RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel debug