Htaccess重定向domain.com到www.domain.com除了stagingdomain.com的多个域


htaccess redirect domain.com to www.domain.com except of staging.domain.com for multiple domains

我使用以下htaccess将url中没有"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]

返回配置错误。

谢谢你的帮助!

试试这个:

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)..(de|lo)之间的任何非.字符