Estoy tratando de configurar un alias para que cuando alguien acceda /phpmyadmin/
, nginx lo extraiga /home/phpmyadmin/
de la raíz del documento habitual en lugar de hacerlo. Sin embargo, cada vez que extraigo la URL, me da un 404 en todos los elementos que no se extraen a través de fastcgi. fastcgi parece estar funcionando bien, mientras que el resto no. strace
me dice que está tratando de extraer todo lo demás de la raíz del documento habitual, pero no puedo entender por qué. ¿Alguien puede proporcionar alguna idea?
Aquí está la parte relevante de mi configuración:
location ~ ^/phpmyadmin/(.+\.php)$
{
include fcgi.conf;
fastcgi_index index.php;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_param SCRIPT_FILENAME /home$fastcgi_script_name;
}
location /phpmyadmin
{
alias /home/phpmyadmin/;
}
/
en el alias y la location
directiva, la solicitud /phpmyadminfile
realmente lo atrapará /home/phpmyadminfile
. En cuanto a por qué la configuración en la pregunta no funciona, me parece correcta, por lo que sospecho que hay otra location
directiva que no se muestra y que coincide cuando no está prevista. En este caso, como alias
termina con el location
prefijo, los documentos nginx sugieren usar en su root /home;
lugar .