2015-06-18 5 views
2

Как я могу .htaccess 301 перенаправить все страницы/файлы (кроме одного) в новый домен?Как я могу .htaccess 301 перенаправить все страницы/файлы (кроме одного) в новый домен?

Я уже сделал файл .htaccess, который успешно перенаправляет большинство всех страниц и файлов моего старого домена (www.olddomain.com) в мой новый домен (www.newdomain.com).

Однако, мне нужно на одну страницу, чтобы не быть перенаправлены на новый сайт, эта страница является Google верификация .html файл:

http://www.olddomain.com/googleverification.html 

Я приложил наиболее соответствующие части файла (.htaccess) вставили ниже:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^olddomain.com$ [OR] 
RewriteCond %{HTTP_HOST} ^www.olddomain.com$ 
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [L,R=301] 

RewriteCond %{REQUEST_URI} !.(php|html?|jpg|gif|png|pdf|tiff|bmp|ico|gz|zip|xml|txt)$ 
RewriteRule ^(.*)([^/])$ http://www.newdomain.com/$1$2/ [L,R=301] 


# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 

ответ

0

Держите первое правило как:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC] 
RewriteCond %{THE_REQUEST} !/googleverification\.html [NC] 
RewriteRule^http://www.newdomain.com%{REQUEST_URI} [L,R=301,NE] 
+0

Я попытался код, но при попытке получить доступ к olddomain.com/googleverification.html перенаправляет newdomain.com/googleverification.html То, что я хотел сделать, это перенаправить olddomain.com на newdomain.com , но не перенаправлять на olddomain.com/googleverification.html – KenWeiLL

+0

Невозможно перенаправить '/ googleverification.html' в новый домен. Убедитесь, что это ** первое правило **, и вы проверите после очистки кеша браузера. – anubhava

+1

Теперь он работает, после того как я удалил свое первое правило, мои первые 3 строки кодов. – KenWeiLL

0

Я попросив тот же вопрос на разных форумах и другое решение также работает.

Я просто решил поделиться им здесь.

RewriteCond {HTTP_HOST} !^www.newdomain.com$ 
RewriteCond %{REQUEST_URI} !^/googleverification.html 
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [L,R=301] 
Смежные вопросы