ПРОЕКТЫ 


  АРХИВ 


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 Sat, 9 Jul 2005, Alex Kitschkiruk wrote:

Если брать пример с сайта, то такая конструкция не записывает в лог
файлы, которые качаются. А только запросы "get /"
То есть сначала открывается в браузере сгенерированный index.html.
Потом скачивается полностью какой-либо файл. По идее должно быть 2
записи. Но есть только одна
Как быть?

55.55.55.55 - - [09/Jul/2005:21:44:17 +0200] "user" "GET /files/
HTTP/1.1" 200 391 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU;
rv:1.7.8) Gecko/20050511 Firefox/1.0.4" "-" "-"

http {
[skip]
   log_format download  '%addr - - [%time] "%{remote_user}v"
"%request" %status '
                        '%length "%{Referer}i" "%{User-Agent}i" '
                         '"%{Range}i" "%{Content-Range}o"';
[skip]
   server {
[skip]
       location /files/ {
           valid_referers  none  server_names  *.server.com/;
           if ($invalid_referer) {
               return   403;     }
            root   /srv/www/htdocs/web2/html;
            autoindex    on;
            auth_basic "hallo";
            auth_basic_user_file /usr/local/nginx/conf/passwd;
            access_log   /usr/local/nginx/logs/access_web2_files.log   download;
        }

Судя по той конфигурации, что была в одном из предыдущих писем, файлы,
скорее всего, попадют в location ~* ^.+\.(jpg|jpeg|gif|png|ico|mpg)$:

-----------
        location /files/ {
            valid_referers  none  server_names  *.virtualserver.com/;
            if ($invalid_referer) {
                return   403;     }
            root   /srv/www/htdocs/web2/html/files;
            autoindex    on;
            access_log   /usr/local/nginx/logs/access_web2_files.log
download;
        }
        location ~* ^.+\.(jpg|jpeg|gif|png|ico|mpg)$ {
            root   /srv/www/htdocs/web2/html;
            access_log   off;
            expires      30d;
        }
-----------

Порядок обработки location описан здесь:
http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#location
Для того, чтобы после /files/ не проверялись регулярные выражения,
нужно написать так:

        location ^~ /files/ {


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




 




Copyright © Lexa Software, 1996-2009.