Re: настройка сервера для отдачи статики для 2-х серверов

Igor Sysoev igor на sysoev.ru
Пт Май 7 13:21:27 MSD 2010


On Fri, May 07, 2010 at 01:20:00PM +0400, Igor Sysoev wrote:

> On Fri, May 07, 2010 at 05:08:25AM -0400, demoversion wrote:
> 
> > Привет.
> > Помогите пожалуйста разобраться в конфигах для настройки сервера:
> > 
> >         server {
> >               listen 80;
> >               server_name site1.ua site2.ua; # для www*** редиректы
> > прописаны
> >               root /wwwdata/site/public/;
> > 
> >                 if (-f $document_root/$host/$request_filename.html) {
> >                       rewrite ^(.*)$ $1.html break;
> >                 }
> > 
> > Как видно у меня один сервер на [b]2 сайта[/b] (site1.ua site2.ua)
> > Статика у мене лежит тут:
> > /wwwdata/site/public/site1.ua/hello.html
> > /wwwdata/site/public/site2.ua/hello.html
> > 
> > идет запрос http://site1.ua/hello
> > [b]Мне надо проверить ести ли файл /$host/file.html и если есть - отдать
> > его.[/b] Все понятно, но я просто не знаю nginx и трудно написать
> > правильный конфиг. Метод проб и ошибок и гугл не помогли.
> > Если кто знает как написать условие проверки и rewrite  - буду очень
> > признателен.
> 
> Лучше так:
> 
>      server {
>          server_name  site1.ua;
>          root /wwwdata/site/public/site1.ua;
>          location / {
>              try_files  $uri.html  =404;
>          }
>      }
> 
>      server {
>          server_name  site2.ua;
>          root /wwwdata/site/public/site2.ua;
>          location / {
>              try_files  $uri.html  =404;
>          }
>      }
> 
> но можно и так:
> 
>      server {
>          server_name  site1.ua site2.ua;
>          root /wwwdata/site/public;
>          location / {
>              try_files  $host$uri.html  =404;

-              try_files  $host$uri.html  =404;
+              try_files  /$host$uri.html  =404;

>          }
>      }


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



Подробная информация о списке рассылки nginx-ru