nginx - Puis-je configurer un document d'erreur global?


7

J'ai une configuration nginx avec tout un tas de server {}blocs. Je veux partager des pages d'erreur entre elles toutes, mais beaucoup d'entre elles ont des racines de document différentes. Je peux utiliser une configuration comme

error_page   404              /404.html;
error_page   500 502 503 504  /50x.html;

en dehors des blocs serveur et il est partagé, mais je dois mettre ces mêmes documents dans toutes les racines, ou avoir des règles comme

location = /404.html {
    root /srv/http/errors;
}
location = /50x.html {
    root /srv/http/errors;
}

dans tous mes blocs serveurs.

Existe-t-il un moyen de partager ces documents sans me répéter encore et encore ou avoir de nombreuses copies dans le système de fichiers?

Réponses:


12

Utilisez la magie d'une directive include pour spécifier tous les passe-partout nécessaires, puis juste include /etc/nginx/standard-error-pages.confdans chaque vhost (intégrez-le au modèle de vhost standard dans votre système de gestion de configuration). Cela rend également très facile le remplacement des pages d'erreur pour un vhost spécifique (en ne mettant pas l'inclusion dans cette configuration de vhost).

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.