ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Хотлинк для папки



On Thu, 31 Mar 2005, Support wrote:

 Не получается разрешить хотлинк для отдельной папки. Вот кусок
 конфига

 location /banners/ {
    root         /home/domains/domain;
    access_log   off;
 }
 location ~* ^.+\.([gG][iI][fF]|[jJ][pP][eE]?[gG]|[pP][nN][gG])$ {
    root         /home/domains/domain;
    access_log   off;
    expires      30d;
    valid_referers  none  server_names  *.domain/;
    if ($invalid_referer) {
       return   403;
    }
 }

 По моим ожиданием хотлинк везде запрещен кроме /banners/*
 Но так не происходит. И во время обращения к гифу в banners с левым
 рефом я получаю 403.

Для того, чтобы после попадания запроса под location /banners/
не проверялись locations с регулярными выражениями, нужно написать так:

   location ^~ /banners/ {

Кстати, для второго location не нужно описывать cases. "~*" проверяет
без учёта регистра:

   location ~* \.(gif|jpe?g|png)$ {

См. http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#location


Игорь Сысоев
http://sysoev.ru




 




Copyright © Lexa Software, 1996-2009.