Page 1 of 1

Блокировка referal-spam в nginx

Posted: Tue Oct 13, 2015 11:59 am
by Kirill
Для блокировки referal-spam добавляю в nginx.conf

Code: Select all

if ( $http_referer ~* (babes|forsale|girl|jewelry|love|nudit|organic|poker|porn|sex|teen) )
 {
      return 403;
 }
После попытки перезапуска выдает

Code: Select all

nginx: [emerg] "if" directive is not allowed here in /etc/nginx/nginx.conf:74
nginx: configuration file /etc/nginx/nginx.conf test failed
Помогите разобраться где я завис.

Re: Блокировка referal-spam в nginx

Posted: Tue Oct 13, 2015 2:54 pm
by skurudo
Kirill wrote:Для блокировки referal-spam добавляю в nginx.conf
Директива для server и location, в nginx.conf их нет - все по пользовательским файлам. Так что просто не туда вы ее добавляете. Логичнее всего фильтровать такое по доменам в "location /", можно даже в шаблон засунуть сразу.

PS: Реальная проблема, кстати, или СЕО-сказки?

PS2: Я что-то такое видел когда-то и меня слегка смутило использование if, стало даже интересно, а не накладно ли это? Проверять каждый раз рефер?
Kirill wrote:Помогите разобраться где я завис.
В документации :)
http://nginx.org/ru/docs/http/ngx_http_ ... odule.html