301.htaccess与web根目录中的其他域重定向

301.htaccess与web根目录中的其他域重定向,.htaccess,redirect,.htaccess,Redirect,通常,如果我想将一个域和该域中的所有页面重定向到另一个新域,我会在.htaccess文件中使用: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !example.com$ [NC] RewriteRule ^(.*)$ http://new-example.com/$1 [L,R=301] 但是我有一个使用cpanel的主机的帐户,它设置了附加组件和子域,以包含在帐户主域的web根目录中,而不是外部。不幸的是,这个htacces

通常,如果我想将一个域和该域中的所有页面重定向到另一个新域,我会在.htaccess文件中使用:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !example.com$ [NC]
RewriteRule ^(.*)$ http://new-example.com/$1 [L,R=301]

但是我有一个使用cpanel的主机的帐户,它设置了附加组件和子域,以包含在帐户主域的web根目录中,而不是外部。不幸的是,这个htaccess代码也会影响所有其他域。如何编写此文件,使其仅影响example.com而不影响帐户的其他加载项域,但仍重定向主域中的所有文件?

您必须声明要重定向的域。在你说所有不是example.com的域都被重定向到new-example.com之前

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?example1\.com$ [OR]
RewriteCond %{HTTP_HOST} ^(www\.)?example2\.com$ [OR]
RewriteCond %{HTTP_HOST} ^(www\.)?example3\.com$
RewriteRule ^(.*)$ http://new-example.com/$1 [L,R=301]

将现有规则替换为以下内容:

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^ http://new-example.com/%{REQUEST_URI} [L,R=301]

谢谢知道这是一个匹配域与匹配所有域的问题不是example.com,只是不知道htaccess语法,谢谢。