diff --git a/README.md b/README.md index bf8071b..ba51c24 100644 --- a/README.md +++ b/README.md @@ -96,21 +96,24 @@ l'accueil, le wiki, les mises à jour et les listes de diffusion. Elle porte `noindex, follow` : une page d'erreur n'a rien à faire dans un moteur de recherche, mais ses liens restent bons à suivre. -**Elle ne sert à rien sans la directive Apache qui va avec.** Le `.htaccess` du -DocumentRoot — qui vit sur le serveur, pas dans ce dépôt public — doit porter : +**Elle dépend de deux réglages qui vivent sur le serveur**, pas dans ce dépôt public — +en place depuis le 23 septembre 2026 : -```apache -ErrorDocument 404 /404.html -``` +- le `.htaccess` du DocumentRoot porte `ErrorDocument 404 /404.html`, et n'envoie plus + au routeur PHP que les adresses commençant par `public-calendars` ; +- `index.php`, ce routeur, finit par un `http_response_code(404)` suivi de la page, + au lieu du `readfile('index.html')` qu'il faisait avant. -et **ne pas** renvoyer les adresses inconnues vers l'accueil. Une règle du type -`RewriteRule . /index.html [L]` produit un « soft 404 » : le visiteur voit l'accueil, -le moteur de recherche enregistre une page valide, et personne ne sait que l'adresse -était fausse. +Jusque-là, **toute adresse inconnue recevait l'accueil avec un code 200** : le visiteur +croyait avoir atterri quelque part, et les moteurs de recherche enregistraient autant +de pages valides qu'il existe d'adresses fausses. Si ISPConfig réinitialise un jour ces +fichiers, c'est ce comportement qui revient — et c'est ce qu'il faut reposer. ```bash -# ce qu'on doit lire une fois la directive en place +# ce qu'on doit lire curl -o /dev/null -w '%{http_code}\n' https://alpinux.org/adresse-qui-nexiste-pas # 404 +curl -o /dev/null -w '%{http_code}\n' https://alpinux.org/ # 200 +curl -s https://alpinux.org/public-calendars/n5BWPYsxw7FCYozM | grep -c BEGIN:VEVENT # > 0 ``` ---