Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Nginx и виртуальные хосты
Hi all.
У меня есть Nginx (front) и Apache (backend).
На Apache крутятся вирт. хосты, файлы которых хранятся здесь
/home/httpd/site1.domain.com
/home/httpd/site2.domain.com
и т. д.
Статику (картинки, стили и прочее) хочу отдавать через nginx - все это хранится
/home/httpd/site1.domain.com/statics
/home/httpd/site2.domain.com/statics
Статика отдается примерно так:
if ($host ~* ^(www\.)?(.*)(\.domain\.com)$)
{
set $myhost $2$3;
}
location ~* statics\/.*\.(png|jpg|jpeg|gif|swf)
{
if ( -d /home/httpd/$myhost/ )
{
root /home/httpd/$myhost/;
}
}
location /
{
proxy_pass http://127.0.0.1:8008;
}
Так оно работает хорошо. Пока не привязать в вирт. хосту домен 2 уровня.
Единст. выход я так понимаю - статику тоже проксировать на Apache
(просто не знаю как определить соответствие домена 3 уровня и домена 2 уровня,
а значит и папку вирт. хоста)
Но при этом для таких хостов все равно сработавает location ~* statics. Я так
понимаю для него root = html.
Как сделать так, чтобы для таких доменов данный location не срабатывал?
---------------------
Спасибо,
с уважением Евгений Фоминых.
|