2015-10-19 83 views
1

我希望仍旧从旧域的子目录提供一个URL,但将所有其他目录从父目录重定向到新域。重定向除一个子目录外的所有DIRECTORY页面.htaccess

www.olddomain.co.uk/directorya/directoryb - >没有重定向 www.olddomain.co.uk/directorya - > www.newdomain.co.uk/directorya

这个工程如果URL后面带有一个输入斜线

RewriteCond %{REQUEST_URI} !^/directorya\/directoryb [NC] 
RewriteRule ^(.*)$ http://www.newdomain.co.uk/ [L,R=301] 

所以http://www.olddomain.co.uk/directorya/directoryb/的作品,但http://www.olddomain.co.uk/directorya/directoryb失败。

试图在年底等内涵添加$,并试图

RewriteEngine on 
RewriteRule !^myspecialdirectory/mynextdirectory($|/) http://newdomain.example%{REQUEST_URI} [L,R=301] 

Redirect entire site except one directory to a new site - apache .htaccess

什么我需要做的就是http://www.olddomain.co.uk/directorya/directoryb/http://www.olddomain.co.uk/directorya/directoryb重定向? (而所有其他http://www.olddomain.co.uk页转到http://www.newdomain.co.uk

的原因,我不明白http://www.olddomain.co.uk/directorya/directoryb去谷歌和不重定向

回答

1

尝试使用THE_REQUEST变量,并确保这本第一个规则

RewriteCond %{THE_REQUEST} !\s+/+directorya/directoryb [NC] 
RewriteRule^http://www.newdomain.co.uk/? [L,R=301] 

清除浏览器缓存后进行测试

+1

完美,谢谢 – JulianB

相关问题