为了澄清,我想重定向:
domain.page.co.uk/path/?lang=de
到
de.page.co.uk/path/
路径将根据我所在的页面而改变。
我想保留自己域名的路径,但最后没有附加参数,但根据我的参数,相应地更改新域名。这样我就可以为不同的语言添加更多的重写规则,即lang = fr。
我尝试了几种方法,但没有一种方法成功。我不熟悉htaccess重写规则语法。以下是我根据网上找到的内容尝试的内容:
RewriteRule ^/([^/d]+).page.co.uk/?$ ^?lang=$1 [L,QSA]
RewriteCond %{REQUEST_URI} ^(.*)/?lang=de$
RewriteRule ^(.*) http://de.page.co.uk/%1 [R=302,NC]
RewriteRule ^de.(.*)/?$ ^(.*)\?lang=de [NC,L]
答案 0 :(得分:1)
你会想要这样的东西:
RewriteCond %{HTTP_HOST} ^domain.page.co.uk
RewriteCond %{QUERY_STRING} lang=(de|fr|it) [NC]
RewriteRule .* http://%1.page.co.uk%{REQUEST_URI}? [R=301,L]
有关说明,请参阅:URL Aliasing, Redirection, Rewriting and Reverse Proxying using Apache HTTPD