В свое время написал такой обстоятельный how2 по организации редиректа с субдомена www на основной домен (или наоборот) и соответственно склейке доменов, и не учел тот момент, что у некоторых хостинг провайдеров есть интересная фича, когда при обращении по IP адресу открывается дефолтный для адреса домен.
То есть ваш сайт представляется в интернете в двух эпостасях: как домен или основное зеркало сайта www.site.ru и как сайт на IP: 123.234.345.456
Чтобы этого избежать, надо также склеить все эти дела с основным доменом, то есть добавить в наш многострадальный файл .htaccess пару строк, естественно памятуя о наличии в нем других операндов:
RewriteCond %{HTTP_HOST} ^123\.234\.345\.456
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
то есть, учитывая накопленный опыт от предыдущих изысканий, склейка IP и основного домена с www, будет выглядеть как:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTP_HOST} ^site\.ru [OR]
RewriteCond %{HTTP_HOST} ^123\.234\.345\.456
RewriteRule (.*) http://www.site.ru/$1 [R=301,L]
</IfModule>
2 Комментариев
-
Иван сказал:
Объясните вторую колонку
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTP_HOST} ^site\.ru [OR]
RewriteCond %{HTTP_HOST} ^123\.234\.345\.456
RewriteRule (.*) http://www.site.ru/$1 [R=301,L][Reply]
anchous Reply:
January 24th, 2017 at 01:11
вы правда полагаете, что это таблица или надо было подкрепить хоть каким то смыслом ссылку на говноборду?
[Reply]