URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 7035
[ Назад ]

Исходное сообщение
"nginx и вложенные директории"

Отправлено 6yktonox , 28-Окт-10 12:29 
Доброго время суток.
Подскажите пожалуйста, бьюсь пару суток и не могу подобрать оптимальное решение поставленное задачи.

Ситуация следующая.
имеем centos 5.5, apache 2.2.16 + nginx 0.8.53
каким образом описать отдачу всей статики, которая встретится далее /home/сайт/ в частности jpg bmp jpeg swf и тому подобные.
а php-скрипты обрабатывались apache`ем, т.к. для безопасности php скрипты работают как httpd.itk для каждого владельца сайта своим.

на данный момент пример виртуального хоста следующий:
server {
    listen 80;
        server_name  site.domain.ru;
        root /home/site;
    index  index.php;

    location ~* ^.+\.(bmp|jpg|jpeg|gif|swf)$ {
            root         /home/site/storage;
            access_log   off;
            expires      30d;
            error_page  404  = @srg;
        include /etc/nginx/params.conf;        
        }
        location @srg {
            root         /home/site/;
            access_log   off;
            expires      30d;
            error_page  404  = @choo;
        include /etc/nginx/params.conf;        
        }
        location @choo {
            root         /home/site/;
            access_log   off;
            expires      30d;
        include /etc/nginx/params.conf;        
        }
        location / {
        proxy_pass http://127.0.0.1:81/;
        include /etc/nginx/params.conf;        
        }

        location ~ /\.ht {
            deny  all;
        }
}

файл /etc/nginx/params.conf

#start
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 30;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 10m;
#end

Мой вариант неудобен тем, что помимо нахождения статики в /home/site/storage, статика так-же находится в /home/site/storage/img, /home/site/storage/users, и с сотни других подпапок. и при совпадении имени файла в storage, nginx незамедлительно отдаст её из storage, хотя файл с подобным именем может находится в /home/site/choo

:(


Содержание

Сообщения в этом обсуждении
"nginx и вложенные директории"
Отправлено Andrey Mitrofanov , 28-Окт-10 19:23 
> Мой вариант неудобен тем, что помимо нахождения статики в /home/site/storage, статика так-же
> находится в /home/site/storage/img, /home/site/storage/users, и с сотни других подпапок.
> и при совпадении имени файла в storage, nginx незамедлительно отдаст её
> из storage, хотя файл с подобным именем может находится в /home/site/choo

Ну сделай его "удобным" -- переставь свой storage после своего choo...
location-ы, в смысле.
Нет?

> :(


"nginx и вложенные директории"
Отправлено 6yktonox , 30-Окт-10 12:15 
>> Мой вариант неудобен тем, что помимо нахождения статики в /home/site/storage, статика так-же
>> находится в /home/site/storage/img, /home/site/storage/users, и с сотни других подпапок.
>> и при совпадении имени файла в storage, nginx незамедлительно отдаст её
>> из storage, хотя файл с подобным именем может находится в /home/site/choo
> Ну сделай его "удобным" -- переставь свой storage после своего choo...
> location-ы, в смысле.
> Нет?
>> :(

ага. спасибо.
вообщем то разобрался. будут вопросы - 384791924