On 30.11.2011 18:31, Валентин Бартенев wrote:
>> -location /pma/$ {
>> +location /pma/ {
> Да и это ещё не всё.
>
> Даже исправить указанную мной проблему, то после того, как он в этот локейшн
> попадет, то произойдет внутренний редирект на /pma/index.php
>
> Файл у вас лежит тут: /usr/local/www/phpMyAdmin/index.php
>
> а location ~ \.php$ c fastcgi_pass передаст:
>
> fastcgi_param SCRIPT_FILENAME /usr/local/www$fastcgi_script_name;
>
> т.е. /usr/local/www/pma/index.php
>
> Сдается мне, rewrite ^/pma/(.+)$ /phpMyAdmin/$1 - это именно то, что вы вообще
> хотите.
скорее всего ему не только /pma/ нужно будет на сервере,
но и другие locations тоже. поэтому наверное - лучше изначально
писать легко масштабируемую конфигурацию, используя вложенные
locations, т.е. примерно так:
server {
...
location /pma/ {
...
location ~ \.php$ {
...
}
}
}
тогда все другие locations на глобальном уровне конфига
будут никак не связаны с location ~ \.php$ внутри location /pma/
и их можно будет конфигурировать полностью независимо друг от друга.
> Попробуйте так:
>
> server {
> listen 80;
> server_name localhost;
>
> #charset koi8-r;
>
> #access_log logs/host.access.log main;
>
> location / {
> root /usr/local/www;
> index index.html index.htm index.php;
> }
>
> location ~ \.php$ {
> rewrite ^/pma/(.+)$ /phpMyAdmin/$1 break;
>
> fastcgi_pass unix:/tmp/php-fpm.sock;
> fastcgi_index index.php;
> fastcgi_param DOCUMENT_ROOT /usr/local/www;
> fastcgi_param SCRIPT_FILENAME /usr/local/www$fastcgi_script_name;
> include fastcgi_params;
> }
>
> error_page 500 502 503 504 /50x.html;
> location = /50x.html {
> root /usr/local/www/nginx-dist;
> }
> }
я представляю во что превратится конфиг, если надо будет добавить кроме
/pma/ еще и другие какие-то location`ы и как это все потом поддерживать.
вместо rewrite ^/pma/(.+)$ /phpMyAdmin/$1 break;
в конфиге наверное лучше использовать alias все-таки.
судя по документации именно для этого директива alias и придумана.
--
Best regards,
Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru