[simplicite@Rec-sim ~]$ more /var/simplicite/hooks/post-upgrade.sh
/var/simplicite/hooks/crb-configure-jdbc-driver.sh "$1" "$2" "$3"
/var/simplicite/hooks/crb-configure-waf.sh "$1" "$2" "$3"
[simplicite@Rec-sim ~]$ more /var/simplicite/hooks/crb-configure-waf.sh
echo "-------------------------------------------"
echo "CRB : Configure WAF"
echo "Name = $1"
echo "Version = $2"
echo "Database = $3"
echo "Dir = `pwd`"
echo "-------------------------------------------"
###################################################################################################
# Gestion de la configuration WAF
# B. Buffereau, le 02/03/2018
#
# La configuration WAF par défaut est définie au niveau du SIM :
# more /var/simplicite/config.sh
#
# pour surcharger cette configuration sur une instance Simplicité:
# vi /home/<instance>/.simplicite
# CRB_WAF=oui / CRB_WAF=non
###################################################################################################
# On fait un backup de la config actuelle
cp tomcat/conf/server.xml tomcat/conf/server.xml.backup
pattern='<Connector port="${tomcat.httpport}"'
config="proxyPort=\"443\" proxyName=\"$CRB_WAF_NAME\" scheme=\"https\" secure=\"true\""
# On commence par supprimer la config WAF CRB si elle existe
echo "Suppression de la config WAF CRB, si elle existe"
sed -i "s/$pattern $config/$pattern/" tomcat/conf/server.xml
# On injecte la config WAF si nécessaire
if [ "${CRB_WAF}" = 'oui' ]; then
echo "Injection de la config WAF CRB"
sed -i "s/$pattern/$pattern $config/" tomcat/conf/server.xml
fi
exit 0
[simplicite@Rec-sim ~]$ more /home/alerte/tomcat/conf/server.xml | grep Connector
<!-- A "Service" is a collection of one or more "Connectors" that share
<Connector port="${tomcat.httpport}" proxyPort="443" proxyName="rec.bretagne.bzh" scheme="https" secure="true" protocol="HTTP/1.1" redirectPort="443" maxPostSize="-1" maxThreads="200" maxConnections="-1">
</Connector>
<Connector port="${tomcat.httpsport}" protocol="HTTP/1.1" scheme="https" secure="true" maxPostSize="-1" maxThreads="200" maxConnections="-1">
</Connector>
<!-- AJP Connector port="${tomcat.ajpport}" protocol="AJP/1.3" redirectPort="443" maxPostSize="-1">
</Connector AJP -->
<!-- SSL Connector port="${tomcat.sslport}" protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https" secure="true" SSLEnabled="true" maxPostSize="-1" maxThreads="200" maxConnections="-1">
</Connector SSL -->
<!-- A "Connector" represents an endpoint by which requests are received
Java HTTP Connector: /docs/config/http.html
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
<Connector port="8080" protocol="HTTP/1.1"
<!-- A "Connector" using the shared thread pool-->
<Connector executor="tomcatThreadPool"
<!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
</Connector>
<!-- Define a SSL/TLS HTTP/1.1 Connector on port 8443 with HTTP/2
<Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
</Connector>
<!-- Define an AJP 1.3 Connector on port 8009
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
Je te laisse voir si c’est compatible avec tes scripts de customisation.
PS: A l’occasion de la P23 nous avons décidé d’abandonner Tomcat 8.5.x au profit de 9.0.x que nous utilisons en interne depuis des mois. Ce sera effectif lors de la mise à jour du manager de ce soir (ou d’un sim refresh manuel)
Mes scripts de customisation fonctionnent, dans le sens où l’appli est accessible via son URL externe : cf https://rec.bretagne.bzh/alerte.
Ce qui ne fonctionne plus sur l’env de recette, c’est de cliquer depuis l’IHM Web du SIM sur l’URL http://alerte.test-sim.cr-bretagne.fr/alerte. Auparavant, la page de connexion à Crowd s’affichait, tandis que là j’ai une erreur 404.
Je n’ai jamais dit que c’était un pb applicatif, au contraire. Je pense que c’est un pb au niveau de la couche reverse proxy du SIM. Sinon, comment expliquer que https://rec.bretagne.bzh/alerte/health fonctionne tandis que http://alerte.test-sim.cr-bretagne.fr/alerte/health renvoie une erreur 404, sachant que ces 2 URLs pointent vers la même instance Simplicité?
Si j’ai bien suivi ce que vous faites vous n’utilisez pas de reverse proxying au niveau du SIM mais tapez directement sur les ports des connecteurs Tomcat depuis votre reverse proxy.
Bref je pense que le pb est dans la config de votre reserse proxy.
ce problème a disparu avec la MAJ de cette nuit sans que nous n’ayons rien touché de notre côté.
Notre config de reverse proxy retransmet les requêtes reçues pour l’appli X sur le domaine bretagne.bzh vers appliX.lebonsim.cr-bretagne.fr/appliX. Elle ne tape pas finalement pas en direct sur le port Tomcat, comme c’était effectivement envisagé au début.
Le reverse proxyiing standard NGINX du SIM ne gère pas les context path non root (/toto). Il ne gère pas non plus les hostnames multiples. Et de toute façon a rien changé sur le SIM récemment sur NGINX.
Je pense que vous avez mis en place votre propre reverse proxiing NGINX pour répondre à vos besoins spécifiques… non ?