Saltar al contenido principal

try_files

A directiva try_files pode empregarse se un ficheiro ou directorio existe. NGINX fai unha redireción interna se o ficheiro existe. Se non existe, devolve un código de estado.

Por exemplo, para comprobar se existe o ficheiro correspondente ao URI, empregamos a directiva coma no seguinte exemplo:

server {
root /www/data;

location /images/ {
try_files $uri /images/default.gif;
}
}

Neste caso se o ficheiro do cartafol images non existe, NGINX fará unha redireción interna ao URI espeficicado no último parámetro, retornando /www/data/images/default.gif.

O último parámetro tamén pode ser un código de erro ou outra directiva location.

server {
root /www/data;

location / {
try_files $uri $uri/ $uri.html =404;
}
}

No seguinte caso, se non se atopa o especificado nos dous primeiros parámetros, faise unha redireción a outro bloque location, que implicará o uso dun servidor proxy

server {
root /www/data;

location / {
try_files $uri $uri/ @backend;
}

location @backend {
proxy_pass http://backend.example.com;
}
}