Lors de la désactivation de l'accès direct à nginx à partir des noms de domaine et des adresses IP non liés, j'ai créé le serveur suivant
server {
listen 80 default;
server_name _;
fastcgi_intercept_errors on;
error_page 404 /data/www/error_page/404.html;
return 404;
}
Le contenu de error_page est le suivant :
404 Not Found!
nginx -t test réussi nginx -s reload rechargé avec succès Pourquoi la page 404 fournie avec nginx est-elle toujours renvoyée ? J'ai vérifié le manuel et découvert que voici comment configurer la page 404~
Le deuxième paramètre de error_page est l'URI, qui est le chemin relatif au répertoire racine du site, pas le chemin physique
Selon vos besoins, il est recommandé de changer pour :
Merci Elite Prince, j'ai relu la description de error_page dans le wiki nginx. Cela indique que le contexte de 404 est uri. J'ai reconfiguré root par défaut, puis j'ai spécifié le chemin relatif de 404. Mais le problème survient lorsque l'accès à un nom de domaine indépendant (tel que cc.com) renvoie la page 404 fournie avec nginx, et que l'accès à cc.com/aaa.html renvoie une page 404 personnalisée. Cela prendra pleinement effet si vous spécifiez en plus l'index sur 404.html. De plus, utiliser location pour définir / comme restriction interne peut également renvoyer 404.