.htaccess немаскированный / принудительный перенаправление поддомена
Я хочу отредактировать файл.htaccess для создания немаскированного перенаправления с подстановочными знаками всех поддоменов на основной поддомен www.
т.е. *.domain.com => www.domain.com
например, www.example.domain.com => www.domain.com
Когда человек вводит www.example.domain.com в адресную строку браузера, я хочу, чтобы он перенаправлял без масок, чтобы URL-адрес действительно заметно изменился на www.domain.com.
Мой нынешний файл.htaccess (показанный ниже) вызывает "www" для всех без трафика www, т.е. http://domain.com
становится http://www.domain.com
, но не могу понять, какие команды RewriteCond и т. д. использовать для вышеуказанного требования.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.com$
RewriteRule ^(.*)$ "http\:\/\/www\.domain\.com\/$1" [R=301,L]
Любая помощь будет принята с благодарностью! Заранее спасибо.
2 ответа
Получите ваш.htaccess вот так:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
Это просто, попробуйте:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.domain\.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,QSA,R=301]
Вам не понадобится ваше правило, которое добавляет www, так что просто удалите его.