LINUX.ORG.RU

[noob][идиотский вопрос]Слэши и nginx


0

2

Подскажите, как обойти. Я с похмелья и тупой чего-то

когда идёшь на

example.com/ololo/ - всё хорошо, перекидывает на example.com/ololo/index.html

example.com/ololo - даёт 404. Как победить слэш? Гуглил немного, но что-то туплю, может сталкивался кто..

server {

listen 80;

location / {
root /var/www;
index index.html index.htm;
}


location /ololo {
root /var/www;
index index.html;
}

★★★★

hunt@zeus:~/temp$ wget http://localhost/ololo
--2011-04-27 21:03:53--  http://localhost/ololo
Resolving localhost... ::1, 127.0.0.1
Connecting to localhost|::1|:80... failed: Connection refused.
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://localhost/ololo/ [following]
--2011-04-27 21:03:53--  http://localhost/ololo/
Reusing existing connection to localhost:80.
HTTP request sent, awaiting response... 200 OK
Length: 13 [text/html]
Saving to: `ololo'

100%[======================================>] 13          --.-K/s   in 0s      

2011-04-27 21:03:53 (185 KB/s) - `ololo' saved [13/13]

Конфигурация аналогична. nginx/0.9.6.

hunt ()

А зачем городить такие конструкции? root же везде /var/www

xspirit ()

Семантика root подразумевает конкатенацию значения, указанного в root и значения статического location. Соответственно, в error_log у вас будет ошибка открытия файла «/var/www/ololo/index.html».

В данном случае нужно заменить root на alias в location /ololo.

m0use ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.