Это самое используемое правило редиректа в SEO. Оно включено по-умолчанию в файл htaccess многих CMS.
Общий случай — когда не надо указывать домен.
Очень удобно когда у вас несколько доменов указывают на один сайт и вы не хотите редиректов на главное зеркало.
Или если вы разрабатываете CMS и хотите чтобы у ваших пользователей не было забот со вписыванием домена в .htaccess при каждой установке системы.
apacheRewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Здесь переменная %{HTTP_HOST}
содержит имя домена.
Если оно начинается с www. — правило начинает обрабатываться. Вырезается домен без www в первой строке и приклеивается к текущему пути во второй.
Частный случай — здесь следует поменять домен.
Вместо example.com подставляем свой домен.
apacheRewriteCond %{HTTP_HOST} ^www.example\.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
Действует так же, только домен не вычисляется динамически, а вписан вручную.
Общий случай — когда не надо указывать домен.
apacheRewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]
Частный случай — здесь следует поменять домен.
Вместо example.com подставляем свой домен.
apacheRewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]