Identifier Contenu Tomcat/Apache avec mod_jk

Questions sur les problèmes d'intégration de Tomcat avec Apache (mod_jk, mod_jk2...).

Modérateur : Modérateurs

Avatar de l’utilisateur
Atma
Nouveau membre
Messages : 9
Inscription : jeu. 12 oct. 2006, 18:08

Identifier Contenu Tomcat/Apache avec mod_jk

Messagepar Atma » jeu. 12 oct. 2006, 18:33

Bonjour à tous !

Comme beaucoup ici, je compte déléguer la gestion des images, javascript, styles etc... (toute la partie "statique) de mon application à apache, et déléguer les traitements sur tomcat.... jusque là, pas de problemes : la solution mod_jk d'apache est tout à fait appropriée ... maintenant, subsiste un probleme ... à ce que je vois, lorsque le même répertoire existe sous tomcat et apache, le mod me parait un peu perdu ... j'explicite !

Admettons, je travaille avec un projet que j'appelerai monprojet
Dans les htdocs d'apache, j'ai créé un répertoire %APACHE_HOME%/htdocs/monprojet/images/ dans lequel j'ai rajouté toutes mes images :) ... pour des tests un peu plus "avancés", j'ai également rajouté un fichier index.html faisant un alert("Je suis dans /htdocs/monprojet/images !")

Maintenant, dans ma webapp tomcat, dont le context path est "/monprojet", il se trouve que j'ai également un répertoire %TOMCAT_HOME%/webapps/monprojet/images dans lequel j'ai mis des images nécessaires pour des traitements java (génération de reports). Toujours pour mon test, j'ai rajouté un fichier index.html dans ce répertoire, faisant un alert("Je suis dans /webapps/monprojet/images !")

Dans le httpd.conf de mon apache (2.2), j'ai déclaré la partie concernant mod_jk comme suit :

Code : Tout sélectionner

LoadModule jk_module modules/mod_jk.so
<Location "/monprojet">
  Options Indexes MultiViews
  AllowOverride None
  Order allow,deny
  Allow from all
</Location>
<Location "/monprojet/WEB-INF/">
  AllowOverride None
  deny from all
</Location>
JkWorkersFile "%TOMCAT_HOME%/conf/workers.properties"
JkLogFile "%TOMCAT_HOME%/logs/mod_jk.log"
JkAutoAlias "%TOMCAT_HOME%/webapps"
JkLogLevel debug
JkMount "/monprojet/*.do" ajp13_worker
JkMount "/monprojet/*.jsp" ajp13_worker

Mon worker est a priori bien configuré... si vous voulez le fichier properties correspondant, je peux le mettre ... mais je ne pense pas que cela provienne de lui

Maintenant, la chose amusante, c'est lorsque je vais sur mon http://localhost/monprojet/ :
- Avec ce que je viens de spécifier, cela m'affiche un "Je suis dans /webapps/monprojet/images !" (pas vraiment le résultat escompté...)
- Lorsque j'enleve le fichier %TOMCAT_HOME%/webapps/monprojet/images/index.html, il m'affiche "Je suis dans /htdocs/monprojet/images !"
=> J'en déduis donc qu'apache cherche d'abord a voir s'il y a quelque chose dans mon tomcat, puis, s'il ne trouve rien, il va voir s'il y a quelque chose dans les htdocs :)

Ce comportement me parait vraiment tres tres bizarre (il doit y avoir quelque chose que j'ai mal fait quelque part... mais je ne vois pas trop quoi !).
J'ai tout de même réussi a "solutionner" mon probleme... mais la solution ne me convient pas du tout ... :

Code : Tout sélectionner

Alias /monprojet/images/ "%APACHE_HOME%/htdocs/monprojet/images/"
<Location "/monprojet/images/">
  Order allow,deny
  Allow from all
</Location>

=> Lorsque je fais ceci, meme si j'ai un index.html dans %TOMCAT_HOME%/webapps/monprojet/images, il m'affiche bien qu'il est dans htdocs ! :)

... Bien évidemment, la solution ne me convient pas ... puisque si j'ai 10 répertoires dans mon htdocs/monprojet/, j'suis obligé de faire autant d'alias ... hum hum hum
Dernière édition par Atma le sam. 14 oct. 2006, 16:18, édité 1 fois.
Image

Avatar de l’utilisateur
bandito
Membre ancien
Membre ancien
Messages : 386
Inscription : ven. 30 sept. 2005, 17:04
Localisation : Paris
Contact :

Messagepar bandito » ven. 13 oct. 2006, 11:47

j'ai le meme soucis et je n'ai pas encore trouvé la solution
je suis donc égtalement intéressé

Merci

Bandito
Bandito

c'est en partageant qu'on s'améliore

Avatar de l’utilisateur
Gandalf
Sorcier des forums
Sorcier des forums
Messages : 2528
Inscription : jeu. 04 déc. 2003, 22:58

Messagepar Gandalf » ven. 13 oct. 2006, 23:14

si tu utilises apache 2.2, mod_jk n'est pas nécessaire, puisqu'il existe directement un proxy AJP13 intégré à apache.

Je peux te donner un exemple de configuration lundi, quand je serai au boulot (où j'ai configuré un apache 2.2)
Celui qui détruit quelque chose pour savoir ce que c'est, a quitté le chemin de la sagesse.

Avatar de l’utilisateur
Atma
Nouveau membre
Messages : 9
Inscription : jeu. 12 oct. 2006, 18:08

Messagepar Atma » ven. 13 oct. 2006, 23:36

Ca m'intéresse en effet :)
j'aime pas être frustré d'utiliser une "solution de secours pas propre" quand j'arrive pas a comprendre quelque chose ^^
Image


Revenir vers « Intégration Apache »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 5 invités