Нужна помощь в настройке 301 постоянного перенаправления в Apache для не www - PullRequest
2 голосов
/ 16 февраля 2010

Я пытаюсь настроить мою версию Apache 2.2 на использование перенаправления 301, когда кто-то печатает мой URL без www. Я хочу настроить это в httpd.conf и не использовать .htaccess, если это возможно. Я попытался использовать постоянный Redirect, но первая переменная должна быть каталогом, а не URL. Любые идеи, как настроить запросы boom.com для перенаправления на www.boom.com с помощью перенаправления 301 в Apache? Спасибо

Ответы [ 2 ]

1 голос
/ 16 февраля 2010

Если вы назвали виртуальные хосты, вы можете поместить дополнительные записи RewriteCond, которые @ tux21b дал внутри, чтобы изолировать их. Также, если у вас есть mod_alias, вы можете попробовать это, что должно сделать то же самое:

<VirtualHost boom.com:80>
    RedirectMatch permanent /.* http://www.boom.com$0
</VirtualHost>

Я уверен, что кто-то прокомментирует, если есть причина использовать один над другим.

1 голос
/ 16 февраля 2010

Добавить следующее:

# Canonical hostnames
RewriteEngine On
RewriteCond %{HTTP_HOST}   !^www\.boom\.com [NC]
RewriteCond %{HTTP_HOST}   !=""
RewriteRule ^/(.*)         http://www.boom.com/$1 [L,R=301]

Это перенаправит все запросы, которые не соответствуют www.boom.com, на www.boom.com с тем же путем запроса. (Например, boom.com/foo?foo=bar будет перенаправлен на www.boom.com/foo?foo=bar).

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