Помощник
|
Запретить переходы с определенных сайтов |
sosnovskij
|
Сообщение
#1
|
||
|
|
||
|
|||
ixman |
24.12.2013, 14:45;
Ответить: ixman
Сообщение
#2
|
|
Я так понимаю передается реферер, значить можно настройками в htaccess такие переходы куда-то перенаправлять.
Собственно вот наверное решение проблемы: Блокировка посетителей, перешедших с определенного домена Если вы не хотите видеть на своем сайте пользователей с конкретного домена, то вы можете запретить им доступ. Например, пользователей с нежелательных ресурсов (сайты для взрослых, хакерские сайты и т. д.) вы можете перенаправлять на страницу 403 Forbidden. Для этого необходимо включить mod_rewrite, хотя, как правило, он включен по умолчанию. Добавьте в .htaccess код: [php]<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_REFERER} bannedurl1.com [NC,OR] RewriteCond %{HTTP_REFERER} bannedurl2.com [NC,OR] RewriteRule .* - [F] </ifModule>[/php] Вам необходимо заменить bannedurl1.com и bannedurl2.com доменами, которые вы хотите внести в черный список. Вы можете использовать флаг [NC], указывающий, что введенное доменное имя нечувствительно к регистру. Флаг [F] указывает на тип действия, в данном случае — отображение ошибки 403 Forbidden. Если вы хотите запретить несколько сайтов, используйте флаги [NC, OR] для каждого домена, если же вы хотите запретить использование одного домена — используйте только флаг [NC].
|
|
|
sosnovskij
|
Сообщение
#3
|
|
Мой .htaccess выглядит так
AddDefaultCharset UTF-8 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC] RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC] RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/sosnovskij [R=302,NC,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress # BEGIN WPSuperCache <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / AddDefaultCharset UTF-8 RewriteCond %{REQUEST_URI} !^.*[^/]$ RewriteCond %{REQUEST_URI} !^.*//.*$ RewriteCond %{REQUEST_METHOD} !POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$ RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz [L] RewriteCond %{REQUEST_URI} !^.*[^/]$ RewriteCond %{REQUEST_URI} !^.*//.*$ RewriteCond %{REQUEST_METHOD} !POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$ RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html [L] </IfModule> # END WPSuperCache Добавил вниз код для вывода 403 ошибки для посетителей с нежелательных сайтов. В итоге .htaccess выглядел так AddDefaultCharset UTF-8 # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC] RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC] RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/sosnovskij [R=302,NC,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress # BEGIN WPSuperCache <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / AddDefaultCharset UTF-8 RewriteCond %{REQUEST_URI} !^.*[^/]$ RewriteCond %{REQUEST_URI} !^.*//.*$ RewriteCond %{REQUEST_METHOD} !POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$ RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz [L] RewriteCond %{REQUEST_URI} !^.*[^/]$ RewriteCond %{REQUEST_URI} !^.*//.*$ RewriteCond %{REQUEST_METHOD} !POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress_logged_in|wp-postpass_).*$ RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html [L] </IfModule> # END WPSuperCache <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_REFERER} mtoys.ua [NC,OR] RewriteCond %{HTTP_REFERER} xn----8sbpjfkkfg2abiej2e5c.xn--p1ai/ [NC,OR] RewriteRule .* - [F] </ifModule> Все страницы сайта стали отдавать 403 ошибку. Где ошибся? -------------------- |
|
|
ixman |
24.12.2013, 17:32;
Ответить: ixman
Сообщение
#4
|
|
Точно ответить не могу в чём проблема, но я бы попробовал код так поправить
[php]<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_REFERER} mtoys.ua [NC,OR] RewriteCond %{HTTP_REFERER} xn----8sbpjfkkfg2abiej2e5c.xn--p1ai/ [NC] RewriteRule .* - [F] </ifModule>[/php] То есть убрать с последнего домена OR, по логики его там не должно быть И вообще это всё упростить надо до вида [php]RewriteCond %{HTTP_REFERER} mtoys.ua [NC,OR] RewriteCond %{HTTP_REFERER} xn----8sbpjfkkfg2abiej2e5c.xn--p1ai/ [NC] RewriteRule .* - [F][/php] Так mod rewrite уже включен, то его включать второй раз не нужно |
|
|
sosnovskij
|
Сообщение
#5
|
|
Сейчас заработало. Только это видимо работает по переходам по ссылкам. Если, находясь на сайте mtoys.ua в адресной строке набрать http://sosnovskij.ru/, то идет переход. Если перейти по ссылке, то отдается 403 ошибка.
-------------------- |
|
|
ixman |
24.12.2013, 18:22;
Ответить: ixman
Сообщение
#6
|
|
Ну тут всё ещё зависит от браузера, если referer передан, то правило сработает, если нет, то определить не возможно. А есть ещё что-нибудь, за что можно зацепиться по этим переходам? Диапазоны IP возможно, или ещё что-то?
Ещё как вариант могу сказать, что это боты, например написанные на php или ему подобных языках, где можно указать произвольный referer. Например это легко реализовать на CURL. И им не надо даже посещать указанный сайт, они просто передают его адрес при парсинге страницы Сейчас нужно понаблюдать упадёт трафик или нет |
|
|
sosnovskij
|
Сообщение
#7
|
|
Оставлю пока так. О результатах отпишусь
-------------------- |
|
|
ixman |
24.12.2013, 21:07;
Ответить: ixman
Сообщение
#8
|
|
Кстати перешёл по адресу mtoys.ua и вспомнил, я у себя на одном из сайтов в статистике LI видел этот урлик, я ещё тогда удивился каким образом с него переходы. Там ещё была парочка доменов, я в той теме говорил про похожий трафик, сейчас я уже точно понимаю, что это боты передают такой реферер. Смотрел сейчас статистику, этих доменов уже нет
|
|
|
sosnovskij
|
Сообщение
#9
|
|
-------------------- |
|
|
ixman |
26.12.2013, 17:50;
Ответить: ixman
Сообщение
#10
|
|
Печально, значит тут надо что-то другое использовать. Блокировать IP например
|
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Продам базу сайтов Wordpress в 16 миллионов доменов! Свежая сборка. | 19 | Boymaster | 11118 | Сегодня, 0:01 автор: Boymaster |
|
Проверка позиций сайтов в поисковых системах с помощью Positon.ru Мониторинг продвижения сайтов |
183 | Positon | 179472 | 12.4.2024, 8:32 автор: Positon |
|
Продвижение сайтов | 70 | vyacheslav333 | 42647 | 8.4.2024, 1:58 автор: vyacheslav333 |
|
Вечные ссылки с трастовых сайтов | 53 | 1informer | 22677 | 7.4.2024, 13:47 автор: 1informer |
|
PRO дизайн: для маркетплейсов и соц. сетей, разработка сайтов, логотипов и иллюстраций! | 27 | OlgaMcField | 8368 | 6.4.2024, 11:55 автор: OlgaMcField |
Текстовая версия | Сейчас: 20.4.2024, 1:42 |