J'ai la configuration suivante : Apache exécute le front-end (AngularJS)
Tomcat 7 Running back end (Spring MVC, Spring Security)
Configuration d'Apache
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_ajp_module libexec/apache2/mod_proxy_ajp.so
ProxyRequests off
ProxyPreserveHost on
ProxyPass /api/ ajp://132.230.166.21:8009/OntoRais/api/
ProxyPassReverse /api/ ajp://132.230.166.21:8009/OntoRais/api/
Alias /rais "/home/bwright/Repositories/ontology-toolchain/WebClient"
<Directory "/home/bwright/Repositories/ontology-toolchain/WebClient">
Order allow,deny
Allow from all
Require all granted
</Directory
</VirtualHost>
Comme on peut le voir, je passe tous les appels api au serveur tomcat en utilisant le protocole ajp.
Configuration de Tomcat (Server.xml)
Rien n'a changé depuis l'installation propre, à part :
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" enableLookups="false"/>
Maintenant, lorsque j'essaie d'accéder à une ressource tomcat via le front-end, j'obtiens 403
HTTP Status 403 - Full authentication is required to access this resource accessing /OntoRais/api/user
Dans le journal du serveur Tomcat, j'obtiens
13:25:10.034 [ajp-bio-8009-exec-7] DEBUG o.s.s.w.s.SessionManagementFilter - Requested session ID ED0779DC647DEE3C58DEA7059C260594 is invalid.
Lorsque l'on accède à la même ressource via le bowser directement sur le serveur tomcat http://localhost:8080/OntoRais/api/user
tout fonctionne bien.
Modifier
Pour clarifier, 132.230.166.21 est la même machine que localhost. J'ai changé la configuration pour dire localhost sans aucun changement.
J'espère que quelqu'un ici pourra m'aider. merci Benedict