Archives pour l'étiquette Tomcat

Apache + Tomcat + Jakarta mod_webapp

Elément Prérequis :

Outils

Il faut pour procéder à l’installation les éléments prérequis suivant :
- make 3.80-96
- autoconf 2.57 ( version supérieur à 2.53 )
- cpp 3.3.1-24
- gcc 3.3.1-24
- glibc 2.3.2-88

Sources

les sources de apache2 version 2.0.52

les sources de jakarta-tomcat-connectors-4.1.31-src à partir du site : http://archive.apache.org/dist/jakarta

http://archive.apache.org/dist/jakarta

choisir le répertoire correspondant à votre version de tomcat (ex : tomcat-4) puis à votre version de complète (ex : v4.1.31) puis le répertoire src/ enfin télécharger les sources : jakarta-tomcat-connectors-4.1.31-src.tar.gz

Binaires

les binaires de jakarta-tomcat-x.x.x.tar.gz à partir du site : http://jakarta.apache.org/site/binindex.cgi

le binaire de jakarta-ant-1.6.2 est disponible sur le site h ttp ://ant.apache.org/bindownload.cgi

Compilation de Apache :

Compilation

Après avoir téléchargé le code source de Apache ( pour moi httpd-2.0.52.tar.gz sur le site de http://www.apachefrance.com ) et l’avoir décompressé et désarchivé au moyen de la commande :

tar -xzvf httpd-2.0.52.tar.gz

dans par exemple le répertoire /usr/local/src , allez dans le sous répertoire httpd-2.0.52. Si vous souhaitez créer un binaire Apache incluant le mode SSL , il vous suffit d’avoir installé au préalablement openssl au moyen par exemple de fichier d’extension rpm ( il faut dans ce cas le package openssl et openssl-devel ). Pour savoir s’ils sont installés et connaître la version, il suffit de taper en ligne de commande :

rpm -q openssl

Pour préparer les fichiers makefile taper à partir de la ligne de commande :

./configure --with-layout=Apache --enable-mods-shared=most --enable-ssl

Il reste à lancer la compilation avec la ligne de commande :

make

Option

Il est possible avant de faire l’installation d’apache, d’alléger le noyau de celui-ci, il suffit d’aller dans le sous répertoire .libs et de taper la commande strip httpd. Il ne reste plus qu’a faire en ligne de commande : make install. Voilà l’installation est terminée, elle s’est faite par rapport au contenu du fichier config-layout section Apache.

Tester
- Il reste à tester le bon fonctionnement de Apache en allant dans son répertoire d’installation , soit ici /usr/local/apache2/bin puis de taper :

apachectl start

Puis ouvrir un navigateur et tester l’url : http://localhost/ qui doit afficher une page d’accueil d’apache.

Installation de jakarta

Decompression et désarchivage de jakarta-ant-1.6.2 :

tar -xzvf jakarta-ant-1.6.2 dans par exemple /usr/local

Installation de Tomcat

Decompression et désarchivage du binaire de tomcat :

tar -xzvf 4.1.31.tar.gz dans par exemple /usr/local

vous pouvez tester le bon fonctionnement de tomcat en lancant startup.sh dans le répertoire : /usr/local/jakarta-tomcat-4.1.31/bin , puis en ouvrant un navigateur à l’adresse URL : http://localhost:8080/

Compiler le mod_webapp

Decompresser et desarchiver les sources les sources de jakarta-tomcat-connectors-4.1.31-src dans par /usr/local :

tar -xzvf les sources de jakarta-tomcat-connectors-4.1.31-src.tar.gz

Compiler mod_webapp pour notre version Apache (nécessite autoconf ). Pour cela aller dans le répertoire /usr/local/jakarta-tomcat-connectors-4.1.31-src/webapp/support. R endre les scripts exécutables avec la commande :

chmod +x *.sh

Puis à partir du repertoire /usr/local/jakarta-tomcat-connectors-4.1.31-src/webapp/ lancer la commande qui doit créer un fichier configure dans le répertoire webapp. :

./support/buildconf.sh

Lancer la commande qui va permettre de créer les fichiers makefile. Ceci toujours à partir de usr/local/jakarta-tomcat-connectors-4.1.31-src/webapp/ :

./configure --with-apxs=/usr/local/apache2/bin/apxs

Lancer maintenant la commande de compilation make à partir du répertoire usr/local/jakarta-tomcat-connectors-4.1.31-src/webapp/. Attention la commande make install ne marche pas.

Il reste à copier le module mod_webapp.so depuis / usr/local/jakarta-tomcat-connectors-4.1.31-src/webapp/apache-2.0 dans /usr/local/apache2/modules .

Créer le fichier jar pour tomcat :

Au moment de la création du module mod_webapp.so aux étapes précédentes, il y a eu création d’un fichier de propriétés servant lui même à créer, à partir de Ant , le fichier jar pour la gestion du protocole warp de communication entre Apache et Tomcat .

Toujours dans le répertoire /usr/local/jakarta-tomcat-connectors-4.1.31-src/webapp/ lancer Ant :

ant

Cela va crée un fichier tomcat-warp.jar dans le sous répertoire build . Copier ce fichier dans /usr/local/jakarta-tomcat-4.1.30/server/lib .

Parametrer Apache :

- Dans le fichier httpd.conf sous /usr/local/apache2/conf à la suite du chargement des autres modules inclure la ligne suivante :

LoadModule webapp_module modules/mod_webapp.so

- A la fin de ce même fichier, inclure la ligne suivante :

WebAppConnection conn warp 192.112.12.12:8008 ( WebAppConnection <nom_connexion> <protocole de communication> <nom du serveur>:<numero de port> )
WebAppDeploy examples conn /examples
WebAppInfo /webapp-info

Paramétrage de Tomcat :

Daite une sauvegarde du fichier server.xml sous / usr/local/jakarta-tomcat-4.1.30/conf puis créer ou modifier celui-ci pour qu’il ressemble à ceci :

<Server port="8005" shutdown="SHUTDOWN" debug="0">
<Service name="Tomcat-Apache">
<Connector className="org.apache.catalina.connector.warp.WarpConnector" port="8008" minProcessor="5" maxProcessor="75" enableLookups="true" appBase="/usr/local/apache2/htdocs" acceptCount="10" debug="0" />
<Engine className="org.apache.catalina.connector.warp.WarpEngine" name="192.112.12.12" debug="0">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="apache_log." suffix=".txt" timestamp="true">
</Logger>
<Realm className="org.apache.catalina.realm.MemoryRealm" />
</Engine>
</Service>
</Server>

Copier le répertoire examples se trouvant sous /usr/local/jakarta-tomcat-4.1.30/webapps dans le répertoire /usr/local/apache2/htdocs .

Résultat

Démarrer Apache puis Tomcat . Ouvrir un navigateur sur l’url : http://192.112.12.12/examples/ ou http://192.112.12.12/webapp-info/