【问题标题】:Apache mod_rewrite does not workApache mod_rewrite 不起作用
【发布时间】:2011-06-29 09:25:47
【问题描述】:

我在 apache tomcat 5.5 上使用带有 spring 框架 2.0 的 J2ee 应用程序。我使用 URL 映射将扩展名从 .jsp 更改为 .htm。我有一个看起来像这样的 URL http://www.800promotion.com/promotion.htm?cid=1344159422528120632840257756098788 我想把它改成 http://www.800promotion.com/1344159422528120632840257756098788 我已经提到了 mod_rewrite 的工作示例。但是我似乎无法让它工作。这些是我的 .htaccess 文件中的行。 重写引擎开启 RewriteRule ^([^/.]+)/?$ /promotion.htm?cid=$1 [L]

我已经和我的主机核实过,他们说服务器支持 mod_rewrite。我无权访问 httpd.conf 文件。但是,我已经从支持中验证 AllowOverride 设置为 all。当我点击 URL 时,页面工作正常,但是 URL 没有被映射。我哪里错了?

【问题讨论】:

    标签: mod-rewrite


    【解决方案1】:
    RewriteEngine On
    RewriteRule ^(.+)$ promotion.htm?cid=$1 [QSA,L]
    

    试试这个

    【讨论】:

      【解决方案2】:

      您需要一个正确的 .htaccess 指令。尝试以下解决方案:

      RewriteEngine on
      RewriteBase /
      RewriteRule (.*) promotion.htm?cid=$1 [L,I,U]
      

      【讨论】:

      • 还是一样。没有发生任何变化。还有其他建议吗?
      • 尝试像RewriteRule ^oldstuff\.html$ newstuff.html 这样非常简单的方法,以确保您的 mod_rewrite 正常工作
      猜你喜欢
      • 1970-01-01
      • 2012-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-16
      • 1970-01-01
      • 2012-12-19
      • 1970-01-01
      相关资源
      最近更新 更多