[java] Tomcat 7.0.43 "INFO: Erreur lors de l'analyse de l'en-tête de requête HTTP"


Answers

S'il y a trop de cookies mis en cache, cela casse le serveur (la taille d'un en-tête de requête est trop grande!). Effacer les cookies peut également résoudre ce problème.

Question

J'utilise Tomcat 7.0.43 avec une application websocket. Mon application fonctionne correctement dans Tomcat 7.0.42 mais avec 43, j'obtiens la sortie suivante lorsque j'essaie d'accéder à mon serveur sur des Websockets:

Sep 16, 2013 3:08:34 AM org.apache.coyote.http11.AbstractHttp11Processor process
INFO: Error parsing HTTP request header
 Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.

La console de mon navigateur affiche les informations suivantes:

WebSocket connection to 'ws://www.testapp.com/socket/notification/848df2e62fcf93e1b3?X-Atmosphere-tracking-i…Date=0&Content-Type=application/json;%20charset=UTF-8&X-atmo-protocol=true' failed: Unrecognized frame opcode: 5 

Voici le journal d'accès à cette demande:

"GET /socket/notification/848df2e62fcf93e1b3?X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=2.0.2-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&X-Cache-Date=0&Content-Type=application/json;%20charset=UTF-8&X-atmo-protocol=true HTTP/1.1"

Qu'est-ce qui a changé dans Tomcat 7.0.43? Que dois-je changer?




Mon problème se produit lorsque j'essaie d'ouvrir https . Je n'utilise pas SSL.

C'est un bug Tomcat.

Aujourd'hui, le 12/02/2017, la nouvelle version officielle des dépôts Debian est Tomcat 8.0.14

La solution consiste à télécharger depuis le site officiel et à installer le dernier package de Tomcat 8, 8.5, 9 ou la mise à niveau vers la version la plus récente ( 8.5.x ) depuis jessie-backports.

Debian 8

Ajouter à /etc/apt/sources.list

deb http://ftp.debian.org/debian jessie-backports main

Ensuite, mettez à jour et installez Tomcat à partir de jessie-backports

sudo apt-get update && sudo apt-get -t jessie-backports install tomcat8



J'avais un problème similaire, j'envoyais une requête POST (en utilisant le plugin RESTClient pour Firefox) avec des données dans le corps de la requête et recevais le même message.

Dans mon cas, cela s'est produit parce que j'essayais d'utiliser le protocole HTTPS dans une instance locale de tomcat où HTTPS n'était pas configuré.









Links