Избавляемся от www в адресе сайта

Универсальное решение проблемы постоянных редиректов на домен без www при помощи mod_rewrite. Просто и полезно. Работает на любом домене без необходимости править для каждого сайта.
В корень бросаем файл .htaccess со следующим содержимым:


RewriteEngine On
RewriteBase /
# В переменную окружения %{ENV:PROTOCOL} помещаем протокол
RewriteRule ^(.*)$ - [E=PROTOCOL:http]
RewriteCond %{HTTPS} ^on$ [NC]
RewriteRule ^(.*)$ - [E=PROTOCOL:https]
# Если нужно убираем www
RewriteCond %{SERVER_PORT} ^80$
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ %{ENV:PROTOCOL}://%1%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ %{ENV:PROTOCOL}://%1:%{SERVER_PORT}%{REQUEST_URI} [R=301,L]

Это все.

Комментарии (2)

  1. dotas:

    Очень хороший блог! Спасибо за вашу работу!

  2. Borulya:

    Давно искал. Респект.

Оставить комментарий