Переадресация .htaccess mod_rewrite - PullRequest
0 голосов
/ 01 февраля 2012

Образец № 1 (работает как положено):

RewriteCond %{HTTP_HOST} ^www.hanoichurch.com$ [OR]
RewriteCond %{HTTP_HOST}     ^hicvn.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.hicvn.com$ [OR]
RewriteCond %{HTTP_HOST}     ^hicvn.org$ [OR]
RewriteCond %{HTTP_HOST} ^www.hicvn.org$ [OR]
RewriteCond %{HTTP_HOST}     ^hanoiworship.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.hanoiworship.com$
RewriteCond %{REQUEST_FILENAME} !^google
RewriteRule ^/?(.*)$ "http\:\/\/hanoichurch\.com\/$1" [R=301,L]

Образец № 2 (не работает *):

RewriteCond %{HTTP_HOST} ^www.nathanbrauer.com$ [OR]
RewriteCond %{HTTP_HOST}     ^nathanbrauer.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.nathanjbrauer.com$
RewriteCond %{REQUEST_FILENAME} !^google
RewriteRule ^/?(.*)$ "http\:\/\/nathanjbrauer\.com\/$1" [R=301,L]

* молча терпит неудачу (посещение www.nathanbrauer.com просто загружает страницу и не перенаправляет на nathanjbrauer.com).

Миллион спасибо!

=== Обновление ===

В итоге я использовал этот код:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^nathanjbrauer\.com$
RewriteCond %{REQUEST_FILENAME} !^google
RewriteRule ^ http://nathanjbrauer.com%{REQUEST_URI} [R=301,L]

1 Ответ

2 голосов
/ 01 февраля 2012

Ваш код образца1 также может быть реорганизован, но я буду предлагать только исправления для кода примера 2, так как это не работает для вас:

RewriteCond %{HTTP_HOST} ^(www\.)?nathanbrauer\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.nathanjbrauer\.com$
RewriteCond %{REQUEST_FILENAME} !^google [NC]
RewriteRule ^ http://nathanjbrauer.com%{REQUEST_URI} [R=301,L]
...