从重写的URL中删除(现在)未使用的查询参数

时间:2018-05-04 14:57:38

标签: .htaccess

似乎无法实现此功能,我想将一些旧的查询驱动网址重写为新格式:

之前的网址:http://www.example.com/blog/?lang=fr

RewriteCond %{QUERY_STRING} ^[^&](\w+)=(\w+)$ [NC]
RewriteRule ^ %2%{REQUEST_URI} [QSD,R=301,L]

以下网址:http://www.example.com/fr/blog/?lang=fr

关闭,但没有雪茄!我尝试了一些SO解决方案(即Rewrite urls in htaccess file - remove query string),但我认为我错过了一些东西。

1 个答案:

答案 0 :(得分:1)

QSD仅适用于Apache 2.4版本。如果您使用的是旧版本,则可以使用:

RewriteCond %{QUERY_STRING} ^[^&](?:\w+)=(\w+)$ [NC]
RewriteRule ^ %1%{REQUEST_URI}? [R=301,L]