Bug #3684
closedMauvaise gestion du HTTP status pour les erreurs 404
100%
Description
Bonjour,
Dans le contexte Silverpeas, quand on essaye d'accéder à une information inexistante, on tombe sur une page 404 spécifique à Silverpeas. Cette page ne respecte pas le protocole HTTP/1.1 parce qu'elle retourne un status code 200 au lieu du status code 404.
Exemple :
http://www.wikipedia.fr/silverpeas.html -> HTTP/1.1 404 Not Found
http://maplateforme/silverpeas/silverpeas.html -> HTTP/1.1 201 Created
Files
Updated by Pierre TEISSONNIERE about 12 years ago
En fait, pour mieux comprendre notre problématique, nous avons en frontal un reverse proxy qui réécrit les erreurs 404 à notre sauce. Vu que Silverpeas ne renvoie pas un statut 404, impossible de l'intercepter. Par contre, ça fonctionne bien pour les contextes non silverpeas (/, /azerty, /etc, ...)
Updated by Nicolas Eysseric about 12 years ago
- Category set to Look
- Status changed from New to Assigned
- Assignee set to Anonymous
- Target version set to Version 5.11
Le problème vient du fait que nous redirigeons les erreurs 404 vers une page JSP et non pas une page HTML.
La page actuelle doit donc être transformée en page HTML. Les libellés multilingues devront être récupérés via le plugin JQuery i18n et nos service REST de traductions.
En attendant la correction, vous pouvez désactiver la page JSP en supprimant l'élément suivant du fichier JBOSS_HOME/server/default/deploy/silverpeas/silverpeas.ear/war-ic.war/WEB-INF/web.xml
:
<error-page> <error-code>404</error-code> <location>/Error404.jsp</location> </error-page>
Updated by Anonymous about 12 years ago
- Status changed from Assigned to In progress...
Updated by Anonymous about 12 years ago
Bonjour Pierre,
Est il possible de tester si cela fonctionne pour votre reverse proxy avec la JSP suivante (fichier joint) ou je force le status code à 404 ?
Pour tester il est nécessaire d'écraser la page JSP existante par celle-ci dans le répertoire $JBOSS_HOME/server/default/deploy/silverpeas/silverpeas.ear/war-ic.war
Dans mon navigateur, Firefox m'indique bien que la page arrive avec un code 404 avec cette nouvelle version.
Sinon je passerai à partir d'une page HTML + javascript i18n.
Cdlt
Updated by Pierre TEISSONNIERE about 12 years ago
Bonjour Etienne,
C'est parfait. Il y a bien un statut de retour "404 Introuvable". Merci.
Updated by Pierre TEISSONNIERE about 12 years ago
Re,
Test effectué sur une plateforme avec reverse proxy. L'erreur 404 est bien générée et le reverse proxy l'intercepte.
Updated by Anonymous about 12 years ago
- Status changed from In progress... to Resolved
Voir le pull request github-218
Updated by Nicolas Eysseric almost 12 years ago
- Status changed from Resolved to Closed
- Target version changed from Version 5.11 to Version 5.10.2
- % Done changed from 0 to 100