我尝试理解一些基本的重写内容,所以我的意思是:
RewriteCond %{HTTP_HOST} ^example.(.+)$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
和
RewriteCond %{HTTP_HOST} ^(www2.example.de|example.de)$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
但如果我把它结合起来就像
一样RewriteCond %{HTTP_HOST} ^(www2.example|example).(.+)$ [NC]
由于重定向过多,我收到内部服务器错误。
那么我如何与www和不同的域名结尾相结合:
RewriteCond %{HTTP_HOST} ^example.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.example.name$ [NC,OR]
RewriteCond %{HTTP_HOST} ^example.name$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.example.de$ [NC,OR]
RewriteCond %{HTTP_HOST} ^example.de$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
我认为它应该很简单,但我只是不明白......
答案 0 :(得分:1)
五个编纂可以合并为一个,如下:
RewriteCond %{HTTP_HOST} ^example\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} (?:www\.)?example\.(name|de) [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]