RuHttpRefererModule

= ngx_http_referer_module =

Модуль ngx_http_referer_module позволяет блокировать доступ к сайту с неверными значениями строки "Referer" в заголовке запроса. Следует иметь в виду, что подделать запрос с нужной строкой "Referer" не составляет большого труда, поэтому цель использования данного модуля заключается не в стопроцентном блокировании подобных запросов, а в блокировании массового потока запросов, сделанных обычными браузерами. Нужно также учитывать, что обычные браузеры могут не передавать cтроку "Referer" даже для верных запросов. Содержание Пример конфигурации Директивы

Пример конфигурации
 * valid_referers  none  blocked  server_names


 * .example.com www.example.info/galleries/;


 * if ($invalid_referer) {
 * return  403;
 * }

Директивы

 * [#valid_referers valid_referers]

valid_referers
syntax: valid_referers [none|blocked|server_names|строка] ...

default: нет

context: server, location

Директива задаёт значения строки "Referer" в заголовке запроса, при которых встроенная переменная $invalid_referer будет иметь значение 0.

Параметры могут быть следующие:


 * none — строка "Referer" в заголовке запроса отсутствует;
 * blocked — строка "Referer" в заголовке запроса присутствует, но её значение удалено файрволлом или прокси-сервером; к таким строкам относятся строки, неначинающиеся на "http://";
 * server_names — в строке "Referer" в заголовке запроса указано одно из имён сервера;
 * произвольная строка — задаёт имя сервера и необязательное начало URI. В начале имени сервера может быть "*.". При проверке порт сервера в строке "Referer" игнорируется.

Пример использования:
 * valid_referers  none  blocked  server_names


 * .example.com www.example.info/galleries/;