Ajp message non valide reçu avec signature

J'utilise Tomcat 7.0.29 avec Apache 2.2.22 modproxy. Configuré Ajp comme protocole dans httpd.conf et Ajpniprotocol dans le serveur.XML. Après le démarrage du serveur, les logs sont remplis avec le message suivant:

grave: Message non valide reçu avec la signature 20599

COM.Apache.Coyote.ajp.AjpMessage processHeader

il n'y a pas de requêtes envoyées au serveur web ou tomcat et il envoie toujours cette erreur. Les journaux d'accès dans tomcat et apache montrer qu'aucune demande ne vient. Quelle est la cause de l'erreur de message invalide?

Voici la configuration :

  • httpd.conf

    ProxyPass /wl ajp:// ip : port /wl
    ProxyPassReverse /wl ajp:// ip : port /wl
    
  • le serveur.xml

    <Connector port="port" 
               protocol="org.apache.coyote.ajp.AjpNioProtocol" 
               connectionTimeout="20000" 
               acceptorThreadCount="2" 
               maxThreads="1600" 
               redirectPort="8443" />
    
19
demandé sur ROMANIA_engineer 2012-08-07 01:24:31

4 réponses

Pour moi, le problème était simple. J'envoyais des requêtes HTTP mais le connecteur était configuré avec le protocole AJP. Mon connecteur server.xml a été configuré comme ceci:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>

Mais quand je l'ai changé pour ceci:

<Connector port="8009" protocol="HTTP/1.1" redirectPort="8443"/>

L'erreur a disparu.

espérons que cela aidera quelqu'un avec cette erreur.

24
répondu smntx 2015-02-27 21:27:47

cela peut aussi se produire lorsque les tailles de tampon ne sont pas les mêmes aux deux extrémités: les journaux mentionnent un message AJP invalide et le navigateur reçoit 400 code d'erreur.

j'ai corrigé la situation avec les deux packetSize connecteur AJP et ProxyIOBufferSize en configuration Apache2.

Dans Tomcat server.xml:

<Connector protocol="AJP/1.3" port="8009"
   connectionTimeout="20000"
   packetSize="65536"
   proxyName="yourproxy.domain.ltd" proxyPort="80"
   />

Dans Apache2 mod_proxy_ajp de configuration, ajoute la déclaration ProxyIOBufferSize 65536.

9
répondu Yves Martin 2013-05-31 07:12:12

il a été constaté que l'un des processus internes appelait ce port et envoyait des requêtes http provoquant le "message invalide.." erreur. J'ai donc fini par ajouter un connecteur http supplémentaire pour ces processus internes

2
répondu Yasser 2012-08-07 19:49:38

j'ai reçu un message similaire aujourd'hui:

Nov 18, 2016 4:25:00 PM org.apache.coyote.ajp.AjpMessage processHeader
SEVERE: Invalid message received with signature 65524

la cause profonde de mon problème était que selinux ne laissait pas apache se connecter à tomcat. Je suis un peu confus quant à la façon dont cette erreur a été un résultat - je m'attendais à ce qu'il n'y aurait pas de connexion, point. À mon avis, j'ai probablement essayé de me connecter manuellement à ce port avec telnet. Faire cela donne certainement un message similaire.

peu importe, peut-être que ce rappel selinux sera utile à quelqu'un d'autre qui finit ici.

0
répondu Dan Pritts 2016-11-18 21:41:56