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

Исходное сообщение
"nginx, статика в разных директориях"

Отправлено Sheh , 30-Авг-10 13:15 
Здравствуйте. Подскажите, кто знает:
Настроена связка nginx + Tomcat
Тяжёлая статика (пользовательские картинки и файлы) лежит в /var/www/
Лёгкая статика (скрипты, дизайн и т.п) в /usr/share/tomcat6/webapps/

Нужно, чтобы тяжёлая и лёгкая статика раздавалась ngix'ом. Правильно ли я пропиал это в конфиге?

    server {
        listen     192.168.1.100:80;
        server_name  mydomen.net www.mydomen.net;

        charset utf-8;
        client_max_body_size 1m;

        #access_log  logs/host.access.log  main;

        location / {
#           root   /usr/share/tomcat6/webapps/;
            proxy_pass         http://127.0.0.1:8080;
            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      90;
            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 64k;
        }
         # Static files location
        location ~* \.(jpg|jpeg|gif|png|js|css|ico) {
            root   /usr/share/tomcat6/webapps/;
        }
        location ~* \.(jpg|jpeg|gif|png) {
            root /var/www/;
        }
    }


Содержание

Сообщения в этом обсуждении
"nginx, статика в разных директориях"
Отправлено GD , 30-Авг-10 16:33 
>[оверквотинг удален]
>        location ~* \.(jpg|jpeg|gif|png|js|css|ico) {
>
>            
>root   /usr/share/tomcat6/webapps/;
>        }
>        location ~* \.(jpg|jpeg|gif|png) {
>
>            
>root /var/www/;
>        }

не правильно...
вы хотите чтобы nginx сам угадывал откуда брать (jpg|jpeg|gif|png) ?


"nginx, статика в разных директориях"
Отправлено Sheh , 31-Авг-10 07:39 
>не правильно...
>вы хотите чтобы nginx сам угадывал откуда брать (jpg|jpeg|gif|png) ?

Но я же указываю пути:

root /var/www/;
root   /usr/share/tomcat6/webapps/;
А как надо?


"nginx, статика в разных директориях"
Отправлено Sheh , 31-Авг-10 08:13 
.

"nginx, статика в разных директориях"
Отправлено GD , 31-Авг-10 11:03 
>>не правильно...
>>вы хотите чтобы nginx сам угадывал откуда брать (jpg|jpeg|gif|png) ?
>
>Но я же указываю пути:
>
>root /var/www/;
>root   /usr/share/tomcat6/webapps/;

у вас 2 разных location-а про одни и те же файлы (jpg|jpeg|gif|png)
будет отрабатывать только 1-й location, временами генеря 404

>А как надо?

попробуйте это http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#t...


"nginx, статика в разных директориях"
Отправлено Andrey Mitrofanov , 01-Сен-10 12:15 
>         # Static files
>location
>        location ~* \.(jpg|jpeg|gif|png|js|css|ico) {
>root   /usr/share/tomcat6/webapps/;

Что-нибудь вроде
  if (!-f $request_filename) {
     break;
  }
попробовать здесь вставить?... (нет, не проверял и точно не знаю)
>        }
>        location ~* \.(jpg|jpeg|gif|png) {
>root /var/www/;
>        }