IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tomcat et TomEE Java Discussion :

Couplage Apache Tomcat


Sujet :

Tomcat et TomEE Java

  1. #1
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut Couplage Apache Tomcat
    Bonjour,

    Je dispose actuellement d'un RPS chez OVh tournant sous Debian 5.

    J'essaye de faire communiquer Apache et Tomcat via le module mod_jk.
    Actuellement j'ai installé Tomcat 5.5 et Apache 2 (aptitude install apache2-mpm-prefork libapache2-mod-jk).

    Par la suite j'ai configuré les fichiers suivants:

    /etc/apache2/mods-available/jk.load
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so
    JkWorkersFile /etc/apache2/workers.properties
    JkLogFile /var/log/apache2/mod_jk.log
    JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
    JkLogLevel warning
    JkMount /tomcat-docs/* worker1
    /etc/apache2/workers.properties
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    workers.tomcat_home=/usr/local/apache-tomcat-5.5.28
    workers.java_home=/usr/local/jdk1.6.0_16/bin/java
    ps=/
    worker.list=worker1
    worker.worker1.port=8009
    worker.worker1.host=localhost
    worker.worker1.type=ajp13
    Pourtant lorsque j'essaye d'accéder à mon site via l'url http://nomdedomaine/tomcat-docs/ rien ne fonctionne.

    Quelqu'un aurait-il une idée du problème ?
    Merci d'avance.
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Dans /etc/apache2/mods-enable, est-ce qu'il y a un lien vers /etc/apache2/mods-available/jk.load ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    J'avoue ne pas être très doué sous Debian mais en lançant la commande ls -la sur le dossier /etc/apache2/mods-enable j'ai constaté que le lien existait bien.

    En fait dans ma configuration décrite, je ne suis pas certain des valeurs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    workers.tomcat_home=/usr/local/apache-tomcat-5.5.28
    workers.java_home=/usr/local/jdk1.6.0_16/bin/java
    dans le fichier /etc/apache2/workers.properties.

    En tout cas merci pour ta réponse.
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Ce serait plutôt ça, je dirais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    workers.java_home=/usr/local/jdk1.6.0_16
    Un Java home c'est le répertoire parent du JDK : la convention veut que de ce répertoire, on trouve toujours un exécutable de JVM à bin/java.

    Y a des messages d'erreur dans l'error_log d'Apache ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    J'avoue n'avoir que regarder dans le fichier mod_jk.log qui ne contenait pas d'erreur.

    Je regarderai ce soir le fichier log d'apache après modification du java_home.
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  6. #6
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    Après quelques tests, j'ai modifié le path java et le fichier /etc/apache2/mods-available/jk.load en remplaçant l'attribut : JkMount.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    JkMount /MonSite/* worker1
    Dans le fichier /var/log/apache2/error.log j'ai le message d'erreur suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    File does not exist: /var/www/MonSite
    Je trouve cela normal puisque mon site se trouve toujours dans le répertoire Tomcat. Dois-je le déplacer, si oui y a-t-il une configuration spéciale à mettre en place ?
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  7. #7
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Non, le déplacer ne servirait à rien, la trace montre clairement qu'Apache ignore ta conf JkMount. Si tu déplaces ton appli dans le document root Apache, Apache servira les fichiers sans les exécuter. Tu peux avoir un serveur Tomcat sur une autre machine, ça devrait logiquement fonctionner.

    Tu testes avec quelle URL exactement ? Tu as JkMount /MonSite/* donc tu dois tester avec http://serveur.com/MonSite/ : il faut un / après MonSite.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  8. #8
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    J'avoue continuer à ramer... En relançant Apache, j'ai un message d'avertissement et je ne sais pas si c grave docteur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    No JkShmFile defined in httpd.conf. Using default /var/log/apache2/jk-runtime-status
    De plus lorsque j'essaye d'accéder à mon site, j'ai toujours deux lignes d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    File does not exist: /var/www/MonSite/
    File does not exist: /var/www/favicon.ico, referer: http://serveur.fr/MonSite/
    J'ai modifié le fichier /etc/apache2/workers.properties pour qu'il pointe vers une jvm 1.5 mais le résultat est le même :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    workers.tomcat_home=/usr/local/apache-tomcat-5.5.28
    workers.java_home=/usr/lib/jvm/java-1.5.0-sun
    ps=/
    worker.list=worker1
    worker.worker1.port=8009
    worker.worker1.host=127.0.0.1
    worker.worker1.type=ajp13
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  9. #9
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Citation Envoyé par nounetmasque Voir le message
    De plus lorsque j'essaye d'accéder à mon site, j'ai toujours deux lignes d'erreur :
    Oublie ces deux erreurs : la première prouve, comme je le disais plus tôt, qu'Apache ignore la conf Jk pour l'URL /MonSite/. La seconde peut être ignorée de manière systématique : une favicon c'est la petite image qui apparaît à gauche de l'URL dans la barre d'adresse de ton navigateur.

    Je vais déplacer la discussion sur le forum Tomcat, ils doivent avoir une idée de la conf Apache qu'il faut mettre en place.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  10. #10
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    je suis peut etre un hérétique : mais pour moi le mod_jk ne sert a rien.
    un bon mod_proxy_http est BEAUCOUP plus simple a configurer, et tout aussi robuste.

  11. #11
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    Merci Mac pour avoir déplacé le message dans un forum plus approprié à mon problème.

    Pour ta réponse Lunatix, peux-tu être un peu plus explicite sur l'utilisation d'un mod_proxy_http.
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  12. #12
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    yep

    alors http://httpd.apache.org/docs/2.0/mod/mod_proxy.html
    ca permet de faire de apache un proxy : du coup tu lui dis tel vhost ou tel repertoire, en fait, faut aller le chercher sur tomcat port 8080 (par exemple)

    du coup : c'est du full http : un protocol simple, lisible, facile a debugger.

    la doc est ici http://tomcat.apache.org/tomcat-6.0-...oxy-howto.html

    par exemple dans ta conf httpd
    ProxyPass /monappli http://localhost:8080/monappli
    ProxyPassReverse /monappli http://localhost:8080/monappli

    Et hop, c'est fini : pas de connecteur incomprehensible, de protocole connecté.

  13. #13
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    Alors pour le moment la configuration du proxy ne fonctionne pas...j'ai essayé d'ajouter dans le fichier : /etc/apache2/mods-available/proxy.load

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
    LoadModule proxy_module /usr/lib/apache2/module/mod_proxy_connect.so
    LoadModule proxy_module /usr/lib/apache2/module/mod_proxy_http.so
     
    ProxyPass             /Monsite  http://localhost:8080/Monsite
    ProxyPassReverse  /Monsite  http://localhost:8080/Monsite
    Et le fichier /tomcat/conf/server.xml:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <Context path="/Monsite" docBase="/usr/local/apache-tomcat-5.5.28/server/webapps/Monsite" debug="5" reloadable="true" crossContext="true">
    <Connector port="8080" proxyName="url de mon site"         proxyPort="80"/>
    </Context>
    Premier problème en créant un lien symbolique vers le dossier avec la commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ln -s mods-available/proxy.load mods-enabled/proxy.load
    Le message d'erreur suivant apparaît :
    Could not open configuration file /etc/apache2/mods-enabled/proxy.load: No such file or directory.

    Merci d'avance pour l'aide.
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  14. #14
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    tu as ce message quand tu fais le ln -s ? soit le fichier n'est pas la, soit peut etre un probleme de droits.

    sinon, si c'est apache qui te dis ca, j'avoue que je suis pas un pro avec, par contre le reste de la conf me parait cohérent.

    j'installe a coups de apt-get en général moi, ca m'evite d'avoir a trifouiller apache.
    (et je m'interesse de plus en plus a nginx aussi, la conf me parait plus simple)

  15. #15
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    moi j'ai sur un serveur qui tourne

    LoadModule proxy_module lib/httpd/modules/mod_proxy.so
    LoadModule proxy_connect_module lib/httpd/modules/mod_proxy_connect.so
    LoadModule proxy_http_module lib/httpd/modules/mod_proxy_http.so

    et c'est tout

  16. #16
    Membre confirmé Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Points : 570
    Points
    570
    Par défaut
    Merci pour cette réponse. En fait mon module n'était pas reconnu car je n'avais pas utilisé la commande a2enmod sur mes différents modules, maintenant cela fonctionne parfaitement.

    Un grand merci pour toutes vos réponses.
    "Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."

  17. #17
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    j'ajoute que si tu veux tuner le truc pour de meilleurs perfs :

    tu peux : utiliser le connection nio de tomcat plutot que le connecteur http standart

    utliser le mod_cache de apache pour qu'il fasse du cache sur tous les fichiers statiques.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Installation du mod_rewrite (Couplage Apache & Tomcat)
    Par Ashen-Shugar dans le forum Tomcat et TomEE
    Réponses: 13
    Dernier message: 25/02/2015, 15h28
  2. Problème authentification avec couplage Apache/Tomcat
    Par arN34 dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 28/05/2007, 10h26
  3. couplage apache - Tomcat + module de sécurité ssl
    Par casho dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 06/10/2006, 09h07
  4. Réponses: 5
    Dernier message: 22/09/2006, 03h13
  5. [TOMCAT + APACHE] Couplage apache + tomcat + mod_jk qui ne marche pas
    Par polnioumane dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 09/06/2006, 14h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo