我正在使用以下htaccess,将没有“www”或“staging”子域名的人重定向到www.domain.com子域名的网址
RewriteCond %{HTTP_HOST} !^(www.domain.com|staging.domain.com)$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
现在我想为多个域提供相同的通用。但是以下情况不起作用:
RewriteCond %{HTTP_HOST} !^((www|staging|dev).(^\.*).(de|lo))$ [NC]
RewriteRule ^(.*)$ http://www.$2.de/$4 [L,R=301]
返回配置错误。
感谢您的帮助!
答案 0 :(得分:2)
请改为尝试:
RewriteCond %{HTTP_HOST} !^(www|staging|dev)
RewriteCond %{HTTP_HOST} ^([^\.]+\.)?([^\.]+)\.(de|lo)$ [NC]
RewriteRule ^/(.*)$ http://www.%2.de/$1 [L,R=301]
%2
将与RewriteCond中的([^\.]+)
匹配,后者将匹配.
和!(www|staging|dev).