Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: alias issue again
On 30.11.2011 21:36, Валентин Бартенев wrote:
в исходном конфиге
location / {}
location ~ \.php$ {}
location /pma/ {}
location ~ ^/pma/(.*\.php)$ {}
я не смог визуально найти причину, почему появляется ошибка
'directory index of "/usr/local/www/phpMyAdmin" is forbidden'
и он не просил вместо него написать конфиг, он просил ответить
на вопрос о причине этой ошибки - "Я не так использую alias-ы?"
Причина данной конкретной ошибки, как я сразу и написал:
неправильный alias, без нужного в данном случае '/' на конце.
И как следствие, не срабатывал index index.php; поэтому запрос
обрабатывался как попытка обратиться к /usr/local/www/phpMyAdmin
в текущем локэйшене.
А листинг директорий у автора был запрещен, на что и указывала ошибка.
судя по отладочному логу:
2011/12/01 01:58:40 [debug] 30615#0: *1590545 test location: "/"
2011/12/01 01:58:40 [debug] 30615#0: *1590545 test location: "pma/"
2011/12/01 01:58:40 [debug] 30615#0: *1590545 test location: ~ "\.php$"
2011/12/01 01:58:40 [debug] 30615#0: *1590545 test location: ~
"^/pma/(.*\.php)$"
2011/12/01 01:58:40 [debug] 30615#0: *1590545 using configuration "/pma/"
2011/12/01 01:58:40 [debug] 30615#0: *1590545 open index
"/usr/local/www/phpMyAdminindex.php"
2011/12/01 01:58:40 [debug] 30615#0: *1590545 stat()
"/usr/local/www/phpMyAdminindex.php" failed (2: No such file or directory)
2011/12/01 01:58:40 [debug] 30615#0: *1590545 http index check dir:
"/usr/local/www/phpMyAdmin"
2011/12/01 01:58:40 [error] 30615#0: *1590545 directory index of
"/usr/local/www/phpMyAdmin" is forbidden, client: 10.17.1.237, server:
q, request: "GET /pma/ HTTP/1.1", host: "q"
текущий локейшин - это "/pma/", за его пределы nginx не выходил.
nginx пытался открыть индексный файл /usr/local/www/phpMyAdminindex.php
и поскольку такого файла не было - выдавал ошибку что directory index
is forbidden.
мои вопросы касались уже исключительно того варианта конфига,
который получился в результате, и который имхо будет гораздо хуже
для поддержки, чем его исходный конфиг с 4-мя разными locations.
Ни я, ни вы - не знаем задач автора. И конечный вариант должен все же
писаться ориентируясь на конкретные цели и самим автором, с пониманием
что происходит и как работает. ИМХО
мы не знаем задач автора, это правда. но кроме /pma/
у него рано или поздно появятся там и другие locations,
поэтому лучше изначально делать конфигурацию удобной
для поддержки, т.е. чтобы все locations были максимально
независимы друг от друга и от порядка следованиях их в конфиге,
т.е. чтобы все locations с регулярными выражениями были бы
вложены внутрь небольших по размеру locations с префиксами.
Моя цель была помочь человеку, коли сам он с проблемой справиться не
может и никто ему больше не написал рабочего варианта. Мой вариант конфига
плох ровно настолько, насколько у меня было больное уставшее сознание
после 9 часов работы и попыток понять из авторского конфига, чего же он хотел
и почему же у него не работает.
понял, sorry.
но писать конфиги для элементарных задач за всех пользователей nginx -
это наверное не выход из положения. тем более, что судя по вопросу
- было видно что документацию по директиве alias он читал,
но из документации и обычного (не отладочного ) error_log`а
он не смог понять почему у него директива alias не работает
так как ожидалось. следовательно - проблемы с документацией
к директиве alias - она не полная и нюанс с '/' там не отражен.
--
Best regards,
Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|