Блокировка доступа с определённого сайта / бан по Referer

Бывает так, что нужно заблокировать доступ к сайту с какого-то определённого сайта. Если на сервере установлен nginx, то эта задачка решается в пару строк.

if ($http_referer ~* "example.com") { return 403; }

Рассматриваем по порядку. if — это условие «если». $http_referer — это реферер, сайт, с которого выполняется переход. «example.com» — это адрес блокируемого сайта. Return 403 возвращает браузеру, перешедшему с сайта example.com страницу ошибки 403 — доступ запрещён.

Блокировка доступа с определённого сайта / бан по Referer

Этот код нужно добавить в секцию server конфига и перезагрузить этот конфиг командой.

service nginx reload

Данное действие запретит переходы с сайта example.com на ваш сайт.