ПРОЕКТЫ 


  АРХИВ 


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: If rewrite



Эххххх.....Приведу полный конфиг.
До нужного момента идет описание еще нескольких серверов.
И вот он:
server {
        listen       80;
        server_name  img.mydomain;
        access_log  /var/log/nginx/img.access.log  main;

        location / {
            root   /var/www/img;
            index  index.html index.htm;
            if (-f $request_filename) {
                break;
            }
            if ($http_referer ~ refer.ru)  {
                rewrite ^/images/books[\d]+/[\d]+/(small.jpg|big.jpg) 
/images/img1/0/img_$1 last;
            }
                rewrite ^/images/imgb[\d]+/[\d]+/(small.jpg|big.jpg) /index.php;
        }

        
        location /images/mail/  {
            alias        /var/www/img/images/;
            if (-f $request_filename) {
                break;
            }
            if ($http_referer ~ refer) {
                rewrite ^/images/mail/img[\d]+/[\d]+/(small.jpg|big.jpg) 
/images/img1/0/img_$1 last;
           
            }
            rewrite ^/images/img[\d]+/[\d]+/(small.jpg|big.jpg) /index.php;
            error_page  404 = /noimg;
        }

        location /images/  {
            root        /var/www/img;
            if (-f $request_filename) {
                break;
            }
            if ($http_referer ~ refer) {
                rewrite ^/images/books[\d]+/[\d]+/(small.jpg|big.jpg) 
/images/img1/0/img_$1 last;
                
            }
                rewrite ^/images/img[\d]+/[\d]+/(small.jpg|big.jpg) /index.php; 
            error_page  404 = /noimg; 
        }
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME /var/www/img$fastcgi_script_name;
            include        fastcgi_params;
        }       



        #error_page  404              /404.html;
        error_page  404              /error404.php;
        #location = /404.html {
         #   root   /var/www/errorpages;
        #}


        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/local/www/nginx-dist;
        }


        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        
        location ~ /\.ht {
            deny  all;
        }
        # XXX Statistics
        location = /ngst {
            stub_status on;
            access_log   off;
            allow 127.0.0.1 ;
            allow mydomain ;
            deny all;
        }
        location ~ ^/rrd/ {
            root   /var/www/_stats;
            allow mydomain;
            deny all;
        }
        #location /images/avatars/ {
        #    root       /var/www/img;
        #    error_page 404 = /noimg;
        #}
        location = /noimg {
            proxy_pass  http://back-www.myback.ru;
        }


location ~* \.(css|js)$ {     #При таком расположений nginx запускается,иначе 
нет,но скрипты и стили не кешируются.
proxy_pass http://127.0.0.1;   #Прописывая в локейшн \images\css\ (где 
непосредственно лежат сами стили и скрипты,все в порядке и работает.Так же и с 
локейшн описанным ниже.)
proxy_set_header Host mydomain;

proxy_cache ONE;
proxy_cache_valid 1d;
proxy_temp_path /var/spool/nginx/temp;

expires 1d;
add_header Last-Modified: $date_gmt;
add_header Cache-Control: public;
}

location ~* \.+small+(jpeg|png|gif)$ {
proxy_pass http://127.0.0.1;
proxy_set_header Host mydomain;

proxy_cache ONE;
proxy_cache_valid 1d;
proxy_temp_path /var/spool/nginx/temp;

expires 1d;
add_header Last-Modified: $date_gmt;
add_header Cache-Control: public;
}
}

После тоже идут описания нескольких серверов.

В документаций написано что файлы кэша складываются в моем случае 
/var/spool/nginx/cache и /temp.Их там нет и ничего не создается.Кеширование 
делаю для того чтобы снизить нагрузку на винты,прыгает очень часто до 
99-100%,средняя нагрузка около 75-80%

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,89982,90903#msg-90903


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.