如何重定向URL并删除查询字符串

时间:2018-02-21 12:11:04

标签: apache .htaccess redirect url-rewriting http-status-code-301

我有这个网址:

  

https://www.example.co.uk/about-us.html?7ec4b46ae6eaa4c756b968f5d2ef3c91=393a66ccb81d9b440d6b104f793224a8

我想将其重定向到:

  

https://www.example.co.uk/about-us/

到目前为止我能得到的最好结果就是能够重定向到/ about-us /但它还会将查询字符串追加到最后。如何重定向此URL并删除查询字符串?

到目前为止,我已经尝试过:

Redirect 301 /about-us.html?7ec4b46ae6eaa4c756b968f5d2ef3c91=393a66ccb81d9b440d6b104f793224a8 https://www.example.co.uk/about-us/

RewriteCond %{REQUEST_URI} ^/about-us.html$ [NC]
RewriteRule ^(.*)$ about-us? [R=301,L]

非常感谢。

1 个答案:

答案 0 :(得分:0)

尝试:

RewriteEngine on


RewriteCond %{THE_REQUEST} /about-us\.html\?7ec4b46ae6eaa4c756b968f5d2ef3c91=393a66ccb81d9b440d6b104f793224a8 [NC]
RewriteRule ^.*$ http://exmaple.com/about-us? [L,R]

规则目的地末尾的?很重要,因为它会从新网址中丢弃旧的查询字符串,否则如果您删除问号,您的新网址将如下所示:

https://www.example.co.uk/about-us?7ec4b46ae6eaa4c756b968f5d2ef3c91=393a66ccb81d9b440d6b104f793224a8

在测试此规则之前清除浏览器缓存。