Hello! On Thu, Aug 29, 2013 at 02:47:01PM +0300, Андрей Василишин wrote:
> location / { > index index.php index.htm index.html; > root /var/www/site.com; > try_files $uri > $uri/ > /index.php?q=$uri&$args > @backend; > rewrite > "^/([^\/]+/[^\/]+)/((s[\d]+)?(e[\d]+){1}(\-[\d]+)*)$" > /$1.html?serie=$2; > rewrite ([^\/]+/[^\/]+.html)/$ /$1 permanent; > rewrite (tag/[^\/]+)/$ /$1 permanent; > valid_referers none server_names > ~(yandex|google|yahoo|bing|facebook|fbcdn|mail.ru|rambler|nigma|vk.com); > if ($invalid_referer) { > access_log > /var/log/nginx/site.com.invalid.log main; > } > if ($a) { > access_log > /var/log/nginx/a.site.com.access.log main; > } > > } > > > Почему-тоЮ, если приходит запрос с реферером, которого нет в > valid_referers, try_files почему-то проверяет только $uri и потом > возвращает сразу 404: http://wiki.nginx.org/IfIsEvil Конкретно ваш случай - "try_files wont work due to if". [...] > Ну, и чтоб два раза не вставать: какой альтернативный способ писать > отдельный лог для invalid_referer? Варианты - уйти в другой location и писать отдельный лог там, писать лог с переменными в имени. -- Maxim Dounin http://nginx.org/en/donation.html _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru