ПРОЕКТЫ 


  АРХИВ 


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: alias issue again



On 01.12.2011 15:57, yokodzun wrote:

при запросе /pma/

- -  01/Dec/2011:20:45:50 +0700 "GET /pma/index.php" 404
- -  01/Dec/2011:20:46:26 +0700 "GET /pma/index.php" 404

при запросе полного пути

- -  01/Dec/2011:20:49:39 +0700 "GET /phpMyAdmin/index.php" 200
- -  01/Dec/2011:20:49:40 +0700 "GET /phpMyAdmin/phpmyadmin.css.php"
200
- -  01/Dec/2011:20:49:41 +0700 "GET /phpMyAdmin/js/messages.php" 200

Судя по всем, таки не правильно
срабатывает alias

alias скорее всего срабатывает правильно. похоже что это
я раньше не правильно понимал, как эта директива работает.

получается, что alias меняет location только для запросов к статике.
а поскольку index.php - не статика, то он обрабатывается во вложенном
location ~ \.php$ он as-is, без модификации, так что без директивы
"rewrite ^/pma/(.+)$  /phpMyAdmin/$1 break;" из модуля mod_rewrite
внутри location ~ \.php$ похоже что никак не обойтись:

server {
    ...
    location / { ... }

    location /pma/ {
        alias /usr/local/www/phpMyAdmin/;
        index index.php;

        location ~ \.php$ {
            rewrite ^/pma/(.+)$  /phpMyAdmin/$1 break;
            ...
        }
    }
}

похоже что в таком варианте - все должно работать нормально,
и возможно - это будет самый оптимальный вариант настройки.
потому что вся работа с /pma/ будет теперь инкапсусирована
внутри одного location`а и этот location /pma/ { ... }
можно будет менять/настраивать независимо от всех
остальных location`ов, которые могут быть в этом server`е.

--
Best regards,
 Gena

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.