RuHttpRefererModule
Contents |
[edit] 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;
: }
[edit] Директивы
- [#valid_referers valid_referers]
[edit] 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/;










