Noter ce que le serveur a fallu régler pour la 404

La page était en place, mais Apache renvoyait toujours l'accueil avec un
code 200 : c'est le .htaccess et le routeur PHP qui décidaient, et ni
l'un ni l'autre ne vit dans ce dépôt. Le README disait quoi poser ; il
dit maintenant ce qui est posé, et ce qui reviendra si ISPConfig
réinitialise ces fichiers un jour.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JYfYUZRcJmmEWJwAxZb4o2
This commit is contained in:
Cédrix 2026-09-23 13:52:06 +02:00
parent ddf3f79e7a
commit c94fcf41fa

View file

@ -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, `noindex, follow` : une page d'erreur n'a rien à faire dans un moteur de recherche,
mais ses liens restent bons à suivre. mais ses liens restent bons à suivre.
**Elle ne sert à rien sans la directive Apache qui va avec.** Le `.htaccess` du **Elle dépend de deux réglages qui vivent sur le serveur**, pas dans ce dépôt public —
DocumentRoot — qui vit sur le serveur, pas dans ce dépôt public — doit porter : en place depuis le 23 septembre 2026 :
```apache - le `.htaccess` du DocumentRoot porte `ErrorDocument 404 /404.html`, et n'envoie plus
ErrorDocument 404 /404.html 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 Jusque-là, **toute adresse inconnue recevait l'accueil avec un code 200** : le visiteur
`RewriteRule . /index.html [L]` produit un « soft 404 » : le visiteur voit l'accueil, croyait avoir atterri quelque part, et les moteurs de recherche enregistraient autant
le moteur de recherche enregistre une page valide, et personne ne sait que l'adresse de pages valides qu'il existe d'adresses fausses. Si ISPConfig réinitialise un jour ces
était fausse. fichiers, c'est ce comportement qui revient — et c'est ce qu'il faut reposer.
```bash ```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/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
``` ```
--- ---