FAQ

Page Discussion Edit History

RuHttpRefererModule

(Redirected from NginxRuHttpRefererModule)

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]

Template:Anchor

[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/;

[edit] References

Original Documentation