tomcat - 使用 tomcat6 在 apache2 上重写规则

标签 tomcat mod-rewrite apache2 url-rewriting mod-jk

我正在尝试重写来自 GWT-Web 应用程序的请求,更具体地说:gwtupload。 Web 应用程序通过 mod_jk 绑定(bind)到 apache2。

我需要重写以下请求:

    http://www.example.com/servlet.gupld?new_session=true&random=0.3840860207955523

    http://www.example.com/webapp/servlet.gupld?new_session=true&random=0.3840860207955523

servlet.gupld 之后的任何内容?必须是可变的。

Webapp 本身工作正常,应该是这样的:

    <IfModule mod_jk.c>
    JkMount /webapp/* tomcat3
    JkLogLevel error
    </IfModule>

虽然我的(不工作)重写规则是这样的:

    <Directory /var/www/www.example.com/www>
            Options -Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all

    RewriteEngine On
    RewriteBase   /
    RewriteRule   ^/servlet\.gupld /webapp/servlet\.gupld [PT,L]
    </Directory>

目前我总是在请求 servlet 时收到 404。

有人可以帮忙吗?

最佳答案

你不需要转义“.”在重写中。你只需要/webapp/servlet.gupld

您还需要在重写规则中添加 QSA 标志,以便查询字符串得到传递。

关于tomcat - 使用 tomcat6 在 apache2 上重写规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7422460/

相关文章:

linux - httpd.conf 代码无法正常工作——建议?

tomcat - 如何在没有重定向的情况下在 Tomcat 中同时启用 HTTP 和 HTTPS?

java - 将多个值从一个页面传递到另一页面

spring-mvc - 在 Tomcat 8.5/Spring MVC 上设置异步处理超时

.htaccess - 仅允许通过 .htaccess 直接访问特定文件夹名称

php - 将动态网址转换为静态网址

php - RewriteRule 在 SSL 重定向上无法正常工作

ruby-on-rails - 压缩来自 Rails 应用程序的 JSON 响应

java - 尽管流量低,但 Tomcat 上的平均负载异常高

ssl - Nexus 终止从 apache 到 tomcat 的转发