J'ai une instance de JBoss installée sur mon serveur Ubuntu 6.06, et sécurisé tout comme il faut.
J'y ai déployé une application qui s'appelle toodoo et à laquelle j'accède sans problème grâce à l'adresse suivante: http://epseelon.org:8080/toodoo (le serveur est arrêté quand je ne teste pas)
Maintenant je voudrais pouvoir accéder à mon application en utilisant plutôt l'URL suivante: http://toodoo.epseelon.org
En cherchant, un peu, j'ai cru comprendre que la première étape pour que ça fonctionne, c'était d'installer et de configurer le module mod_jk sur mon serveur Apache. J'ai suivi ce tutoriel et j'ai un peu de mal à l'adapter à la fois à la configuration particulière d'Apache sur Ubuntu et à ce que je veux faire.
Voici ce que j'ai pour l'instant (et qui bien sûr, ne fonctionne pas du tout).
/etc/apache2/mods-available/jk.load
/etc/apache2/mods-available/workers.properties
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so # Where to find workers.properties JkWorkersFile /etc/apache2/mods-available/workers.properties # Where to put jk logs JkLogFile /var/log/apache2/mod_jk.log # Set the jk log level [debug/error/info] JkLogLevel info # Select the log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" # JkOptions indicates to send SSK KEY SIZE JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat JkRequestLogFormat "%w %V %T" # You can use external file for mount points. # It will be checked for updates each 60 seconds. # The format of the file is: /url=worker # /examples/*=loadbalancer JkMountFile /etc/apache2/mods-available/uriworkermap.properties # Add shared memory. # This directive is present with 1.2.10 and # later versions of mod_jk, and is needed for # for load balancing to work properly JkShmFile /var/log/apache2/jk.shm # Add jkstatus for managing runtime data <Location /jkstatus/> JkMount status Order deny,allow Deny from all Allow from 127.0.0.1 </Location>
/etc/apache2/mods-available/uriworkermap.properties
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 # Define list of workers that will be used # for mapping requests # The configuration directives are valid # for the mod_jk version 1.2.18 and later # worker.list=loadbalancer,status # Define Toodoo # modify the host as your host IP or DNS name. worker.toodoo.port=8009 worker.toodoo.host=localhost worker.toodoo.type=ajp13 # Load-balancing behaviour worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=toodoo # Status worker for managing load balancer worker.status.type=status
Et enfin, /etc/apache2/sites-available/toodoo (avec le lien symbolique qui va bien dans /etc/apache2/sites-enabled/toodoo):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 # Simple worker configuration file # # Mount the Servlet context to the ajp13 worker /jmx-console=loadbalancer /jmx-console/*=loadbalancer /web-console=loadbalancer /web-console/*=loadbalancer /toodoo=loadbalancer /toodoo/*=loadbalancer
Et là, je redémarre mon Apache, je démarre mon JBoss et là... ça marche presque !!! Il ne me manque plus qu'une chose: comment je peux spécifier que la redirection doit se faire sur le path /toodoo et non pas sur la racine? Parce que là pour l'instant http://toodoo.epseelon.org me mène droit sur la racine de JBoss avec les liens vers les consoles et tout ça.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <VirtualHost *:80> ServerAdmin sebastien.arbogast@gmail.com ServerName toodoo.epseelon.org # Send servlet for context /servlets-examples to worker named worker1 JkMount /* loadbalancer # Send JSPs for context /jsp-examples to worker named worker1 JkMount /*.jsp loadbalancer </VirtualHost>
Je précise au passage que j'ai plusieurs applications déployées sur JBoss et susceptibles d'être accessibles sur le même modèle donc je ne veux pas feinter en mettant toodoo comme application par défaut.
Partager