【问题标题】:htaccess url redirect (character "?")htaccess url 重定向(字符“?”)
【发布时间】:2015-08-29 17:30:04
【问题描述】:

我有一个这样的网址:

 http://mydomain.es/foro.php?topic=9

我想把它重定向到:

 http://mydomain.es/foro/9/

但我无法让它工作,我尝试过类似的方法:

 redirectMatch  302 ^/foro.php\?topic=([0-9]+)$ /foro/$1/

但它不起作用,问题是字符?,如果我在 url 中删除它(并使用类似的 redirectMarch

 redirectMatch  302 ^/foro.phptopic=([0-9]+)$ /foro/$1/) 

它工作正常,你能帮帮我吗?我要疯了。

【问题讨论】:

    标签: apache .htaccess url redirect


    【解决方案1】:

    这应该可行:

     RewriteEngine On
     RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/?foro\.php\?topic=([^&\s]+) [NC]
     RewriteRule ^ /foro/%1? [NE,NC,R,L]
    
    RewriteRule ^([^/]+)/([^/]+)/?$ /foro.php?topic=$2 [QSA,NC,L]
    

    【讨论】:

      【解决方案2】:

      answered here - rewritematch 不支持查询字符串。请改用 mod_rewrite。

      【讨论】:

        猜你喜欢
        • 2017-10-30
        • 2013-09-18
        • 1970-01-01
        • 1970-01-01
        • 2019-01-05
        • 2021-04-05
        • 1970-01-01
        • 1970-01-01
        • 2022-11-24
        相关资源
        最近更新 更多