Autres versions
Vous êtes ici : Installer et exploiter → Installation → Serveur applicatif → Tomcat
Configuration AJP de Tomcat
Cette page décrit les étapes de configuration du connecteur AJP de Tomcat sur le serveur applicatif.
Configuration du connecteur
Le fichier à éditer est /opt/tomcat/conf/server.xmlConnecteur HTTP
Supprimer ou mettre en commentaire la balise XML Connector correspondant au protocole HTTP
Connecteur AJP
Modifier ou créer la balise XML Connector correspondant au protocole AJP et ainsi permettre à Tomcat d'être interrogé via le protocole AJP 1.3.
Cette balise doit se trouver dans la déclaration XML du Service se nommant "Catalina" (ce service existe déjà dans Tomcat).
Note importante GhostCat
Suite à la faille GhostCat sur le protocole AJP, un nouveau paramètre est devenu obligatoire à partir de tomcat 8.5.51.
Il faut ajouter au connecteur AJP un nouvel attribut nommé secret et lui attribuer une valeur (une chaîne alphanumérique d'une20aine de caractères par exemple).
Cette valeur doit être reportée dans la configuration des workers apache httpd (cf la déclaration du worker d'Apache)
Si votre environnement ne permet pas d'appliquer ce nouveau paramètre (librairie mod_jk obsolète par exemple), vous devez ajouter l'attribut secretRequired="false" à la place
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on"/>
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/>
<Service name="Catalina">
<Connector port="8009" protocol="AJP/1.3" connectionTimeout="60000" maxThreads="150" URIEncoding="UTF-8"
secret="mettre_ici_la_valeur_de_votre_secret"/>
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" autoDeploy="false" unpackWARs="false" deployOnStartup="false">
<Context docBase="/web/ksup/webapp" path="" crossContext="true" allowLinking="false"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t '%r' %s %b"/>
</Host>
</Engine>
</Service>
</Server>
En fonction de votre environnement et des usages de votre application, il peut être nécessaire d'adapter les paramètres suivants :
- port : port d'écoute du connecteur HTTP de Tomcat, par défaut 8009. Cette valeur est utilisée dans la déclaration du worker d'Apache.
- connectionTimeout : temps durant lequel une connexion acceptée par Tomcat peut être mise en attente (milliseconde)
- maxThreads : nombre maximum de "thread" Java que pourra exécuter Tomcat en même temps
En fonction de votre environnement il peut être nécessaire d'adapter le paramètre allowLinking :
- allowLinking : changer la valeur à "true" si vous utilisez des liens symboliques pour certains dossiers de l'application
Mis à jour le 7 février 2023