Эта конфигурация работает:
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
Но это возвращает 404 для каждого файла .php (в то время как .css / .text работает нормально):
location /pma {
alias /usr/share/phpmyadmin;
index index.php index.html index.htm;
location ~ ^/pma/(.+\.php)$ {
alias /usr/share/phpmyadmin/$1;
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~* ^/pma/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
alias /usr/share/phpmyadmin/$1;
}
}
Журнал ошибок пуст.
Eсть каталог проблем с участием alias
и try_files
.
Возможно, вы захотите использовать свою старую конфигурацию, скрытую за внутренней перезаписью:
location /pma {
rewrite ^/pma(.*)$ /phpmyadmin$1;
}
location /phpmyadmin {
internal;
...
}