J'ai essayé de résoudre ce problème, j'ai une machine virtuelle avec la même configuration que mon serveur de production. La ligne ligne ErrorDocument dans 000-default.conf fonctionne sur ma machine virtuelle, mais ne fonctionne pas sur mon serveur de production.
Les deux points apparemment différents sont: a) le le serveur de production a un certificat de sécurité et b) le 000-default.conf sur le serveur de production a mod_rewrite activé lorsqu'il n'est pas utilisé , c'est une différence.
J'ai désactivé mod_rewrite pour voir ce qui se passerait, ce qui n'a rien changé. Tous les documents
J'ai le dossier par défaut défini (/ var/www/html) et les seules modifications que j'ai apportées au fichier 000-default.conf sont les suivantes:
ErrorDocument 404 /error_pages/404.html
ErrorDocument 500 /error_pages/50x.html
ErrorDocument 502 /error_pages/50x.html
ErrorDocument 503 /error_pages/50x.html
ErrorDocument 504 /error_pages/50x.html
<Files "404.html">
<If "-z %{ENV:REDIRECT_STATUS}">
RedirectMatch 404 ^/404.html$
</If>
</Files>
<Files "50x.html">
<If "-z %{ENV:REDIRECT_STATUS}">
RedirectMatch 404 ^/50x.html$
</If>
</Files>
partie de réécriture de mod:
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.website.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]
Je ne suis pas sûr que ce soit une cause non plus, cependant, mon certificat n'est valide que pour le site Web, et non pour l'URL nue.
Vous ne savez pas où aller à partir de maintenant, le serveur affiche la page d'erreur Apache par défaut.
Grâce aux questions de w3dk, j'ai pu comprendre pourquoi mes réorientations de pages ne fonctionnaient pas.
J'utilisais cryptons pour mon certificat de sécurité, et à cause de (ou peut-être de mon manque de connaissances), il a créé un nouveau fichier .conf avec les lignes pour charger les certificats SSL (000-default-le-ssl.conf) qui a pris précédent sur le fichier default.conf d'origine.
Lorsque j'ai modifié ce nouveau fichier .conf, tout fonctionnait correctement.