Можно ли регистрировать (но разрешить выполнение запроса) недействительные источники, используя nginx? - PullRequest
2 голосов
/ 25 июня 2011

при использовании nginx в качестве простого веб-сервера (без магии обратного прокси-сервера, даже cgi и т. Д.) Возможно установить список допустимых ссылок и сделать что-то вроде:

if ( referrer not in list of VALID referrers ) {
    log this referrer
}

isчто-то в этом роде возможно с использованием стандартного исходного кода nginx ИЛИ каких-либо дополнительных модулей / расширений?

, насколько я понимаю, это может быть немного связано, нет необходимости в полной записи Conf ... указывая мне на правильный Confдиректив хватит:)

спасибо!

1 Ответ

2 голосов
/ 26 июня 2011
http {
  map $http_referrer $log_ref {
   default               0;

   http://referrer1/path 1;
   ~^http://referrer2/   1;
  }

  server {

    location / {
      if ($log_ref) {
        access_log ....
      }
    }

  }
}

Nginx версии 0.9.6+ поддерживает регулярные выражения в map. Маркер ~ служит для их обозначения.

...