Редирект 301 со всех субдоменов на основной. Отдается страница под любым субдоменом.

Onu
На сайте с 10.01.2007
Offline
170
Onu
1439

Добрый день!

Заметил что в индекс стали влетать страницы которые кто-то намеренно загоняет такого вида:

wwwsss.site.ru
dgjhdjgh.site.ru

и т.д. - несколько десятков других субдоменов.

То есть страницы сайты готовы отдаваться под любым субдоменом, не важно что идет перед site.ru, страница все равно отдается.

На сайте работает плагин Wp Super Cache , содержимое htaccess полное следующее:

# BEGIN WPSuperCache
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
#If you serve pages from behind a proxy you may want to change 'RewriteCond %{HTTPS} on' to something more sensible
AddDefaultCharset UTF-8
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{QUERY_STRING} !.*=.*
RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$
RewriteCond %{HTTP:X-Wap-Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTP:Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{HTTPS} on
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{SERVER_NAME}/$1/index-https.html.gz -f
RewriteRule ^(.*) "/wp-content/cache/supercache/%{SERVER_NAME}/$1/index-https.html.gz" [L]

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{QUERY_STRING} !.*=.*
RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$
RewriteCond %{HTTP:X-Wap-Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTP:Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{HTTPS} !on
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{SERVER_NAME}/$1/index.html.gz -f
RewriteRule ^(.*) "/wp-content/cache/supercache/%{SERVER_NAME}/$1/index.html.gz" [L]

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{QUERY_STRING} !.*=.*
RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$
RewriteCond %{HTTP:X-Wap-Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTP:Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTPS} on
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{SERVER_NAME}/$1/index-https.html -f
RewriteRule ^(.*) "/wp-content/cache/supercache/%{SERVER_NAME}/$1/index-https.html" [L]

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{QUERY_STRING} !.*=.*
RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$
RewriteCond %{HTTP:X-Wap-Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTP:Profile} !^[a-z0-9\"]+ [NC]
RewriteCond %{HTTPS} !on
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{SERVER_NAME}/$1/index.html -f
RewriteRule ^(.*) "/wp-content/cache/supercache/%{SERVER_NAME}/$1/index.html" [L]
</IfModule>

# END WPSuperCache

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

С домена без www происходит редирект на домен с www. , а с остальных - нет. Вопрос - как настроить, и для всех статей тоже? Плагином или вручную.

Добавляю код в htaccess:

RewriteCond %{HTTP_HOST} !^www.site.ru$ [NC]
RewriteCond %{HTTP_HOST} site.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

Приводит к том что открытие субдомена wwwsss.site.ru приводит к редиректу на страницу http://www.site.ru/wp-content/cache/supercache/wwwsss.site.ru/index.html - прямо в адресной строке.

P.S. Код htaccess интерпритировался на форуме не правильно, чтобы получить нормальную версию нужно цитировать мое сообщение.

bums
На сайте с 03.07.2006
Offline
449
#1

Для начала в настройках зоны домена(DNS) убери А запись со звездочкой, там что то типа

* IN A 192.168.11.22

где 192.168.11.22 IP сервера твоего хостера

А в .htaccess сразу после

RewriteEngine On
RewriteBase /

впиши

RewriteCond %{HTTP_HOST} !^www\.site\.ru$
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

а кусок

RewriteCond %{HTTP_HOST} !^www.site.ru$ [NC]
RewriteCond %{HTTP_HOST} site.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
убери, если он там еще есть
Недорогая регистрация и продление доменов RU/SU/РФ/COM/NET/ORG/и т.д. ( https://www.regnic.name/?sesign ) в РЕГРУ, РЕГТАЙМ, Р01, РУЦЕНТР. А так же хостинг и SSL сертификаты.
Onu
На сайте с 10.01.2007
Offline
170
Onu
#2

bums, спасибо за оперативность. Удаление записи DNS помогло избавиться от открытия левых страниц, теперь вылазят 105 Код ошибки: ERR_NAME_NOT_RESOLVED (экспериментирую на другом домене сейчас). Однако, добавление записи в htacc приводит к циклическому редиректу. Хотелось бы полчить 404 или 301 редир с субдоменов.

bums
На сайте с 03.07.2006
Offline
449
#3

с WP не работал никогда, но наверняка там в настройках есть указание домена/зеркала сайта. Возможно там у тебя вписан site.ru, а не www.site.ru и WP редиректит на site.ru, а реврайт снова на www.site.ru и так по кругу.

Onu
На сайте с 10.01.2007
Offline
170
Onu
#4

Спасибо, да был циклические редирект внутри самого WP. Убрал - цикл пропал, но осталась 105 ошибка по-прежнему. В принципе, не критично для меня со старых "левых" урлов ставить редирект на главное зеркало.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий