ПРОЕКТЫ 


  АРХИВ 


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: Вопрос пр о http_mod_index



On Sat, Apr 28, 2007 at 01:19:52AM +0400, avn@xxxxxxxxxxxxxx wrote:

> On Fri, Apr 27, 2007 at 05:53:34PM +0400, Igor Sysoev wrote:
> 
> > > Имеем следующую проблему -- в стандартынй конфиг добавляем
> > > 
> > >    location ~ /enc.* {
> > >       root /home/enc/public_html;
> > >       index index.html;
> > > #      rewrite ^/enc/$ /index.html break;
> > >       rewrite ^(/enc)(/.*) $2 break;
> > >       autoindex on;
> > >    }
> > > 
> > > при http://localhost/enc/   имеем в errorlog следующее:
> > > 2007/04/27 15:18:07 [error] 11191#0: *1 open() "/var/www/index.html" 
> > > failed (2: No such file or directory), client: 127.0.0.1, server: 
> > > terminator, URL: "/enc/", host: "localhost"
> > > 2007/04/27 15:20:24 [error] 11191#0: *2 open() "/var/www/index.html" 
> > > failed (2: No such file or directory), client: 127.0.0.1, server: 
> > > terminator, URL: 
> > > "/enc/",  host: "localhost"
> > > (в /var/www показывает location /)
> > > Где я был неправ, что индекс ищется не в том location где определен?
> > > (я конечно написал rewrite полечивший проблему --- но хочется понять как 
> > > правильно)
> > > 
> > > nginx 0.5.19
> > > debian linux  unstable, 2.6.20-1-amd64 #1 SMP
> > > 
> > > Буду признателен за совет.
> > 
> > Я не понял, какой rewrite вылечил проблему, и в чём проблема заключается.
> > Что должно быть видно по запросу /enc/ и /enc/file ?
> > 
> Тот что в приведенном куске закомментирован.
> rewrite ^/enc/$ /index.html break;
> Хотя это криво конечно, и надо что-то типа ^([^/].*)/$ $1/index.html.
> 
> А проблема вот в чем.
> По /enc/file  отдавалось /home/enc/public_html/file
> А вот /enc/  пыталось отдать /var/www/index.html, а не 
> /home/enc/public_html/index.html как ожидалось от него.

       location = /enc  {
           alias  /home/enc/public_html/;   # для редиректа
       }

       location  /enc/  {
           alias  /home/enc/public_html/;
           index  index.html;
       }

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



 




Copyright © Lexa Software, 1996-2009.