我想像这种模式那样做很多重定向:
domain.com/xxx/?lang=en
至domain.com/en/xxx/
例如:
domain.com/about/?lang=en
至domain.com/en/about/
这会将所有链接*/?lang=en
重定向到一个目标。
RewriteCond %{QUERY_STRING} ^lang=en
RewriteRule ^ en/about/? [R=301,L]
答案 0 :(得分:0)
您可以在根.htaccess
中使用这些规则:
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+([^/]+)/\?lang=([^\s&]+) [NC]
RewriteRule ^ /%2/%1? [R=302,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-z]{2})/([^/]+)/?$ $2/?lan=$1 [L,QSA]
确保代码正常运行后,将302
更改为301
。