Перенаправление с использованием правила 301 в .htaccess - PullRequest
0 голосов
/ 24 мая 2010

У меня проблема с перенаправлением страницы с сайта example.com (на) www.example.com

Код, который у меня есть:

  RewriteEngine on

  RewriteCond %{HTTP_HOST} ^subdomain\.domain\.com$ [NC]
  RewriteRule ^(.*)$ http://www.subdomain.domain.com/$1 [L,R=301]

А это не работает, любая помощь?

Ответы [ 3 ]

2 голосов
/ 29 мая 2010

Все, что вам нужно сделать, это заставить www версию вашего домена? Просто сделай это ...

# Force www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
0 голосов
/ 02 июня 2010

Обновление: на основе вашего комментария It does not redirect and it gives me the openDNS page, я думаю, что ваша проблема не (еще?) С mod_rewrite.

Попробуйте добавить Options +FollowSymlinks до RewriteEngine On, затем добавьте RewriteBase / после RewriteEngine On.

Я рекомендую прочитать разделы Fatal Redirection и rewrite logging найдено здесь .

Вы можете включить mod_rewrite отладку, чтобы увидеть, что происходит (если что!):

RewriteLog "/tmp/rewrite.log"`
RewriteLogLevel 5
0 голосов
/ 26 мая 2010

Вот как выглядит мое переписывание, и оно работает:

## REWRITE RULES
# enable rewrite
RewriteEngine On
RewriteBase /

# enforce a specific domain in the url
RewriteCond %{HTTP_HOST} !^www\.sub\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.sub.domain.com/$1 [R=301,NC,L]

Это правило будет перенаправлять все, что НЕ www.sub.domain.com на www.sub.domain.com.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...