Если вы поместите root /usr/share;
в блок server
(там, где находился исходный оператор root
), URI example.com/phppgadmin/
будет работать, как и ожидалось.
Но это также приведет к раскрытию всегосодержимое каталога /usr/share
, которое вам может не понадобиться.
Вы можете поместить оператор root
внутри location
, но вам необходимо включить все директивы, необходимые для обработки запроса.
Например:
location ^~ /phppgadmin/ {
root /usr/share;
try_files $uri $uri/ =404;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
include fastcgi_params;
}
}
Модификатор ^~
позволяет избежать любой неопределенности с URI, заканчивающимися на .php
.Подробнее см. в этом документе .