Hans van Zijst wrote:
Hi,
Since I updated my system last week, mod_jk doesn't work anymore. Tomcat starts
up just fine, no errors or warnings. I checked that the AJP1.3 connector runs,
it listens on port 8009. Apache runs fine as well, but as soon as I connect to
the URL I mapped to Tomcat, I get:
"[error] jk_handler::mod_jk.c (2223): Could not init service for
worker=confluence"
I did a few traces and found out that no connection is attempted to port 8009,
so I assume the problem is somewhere in my Apache config. I'm lost for answers
as I couldn't find anything on the web or in my documentation. Can anyone
please point me in the right direction?
This is my configuration:
Linux (Debian Lenny, i386)
Tomcat 5.5
Apache 2.2.6
mod_jk 1.2.25
Fine.
What's your platform (OS)?
Here's my workers.properties:
---- BEGIN workers.properties ----
worker.list=confluence
worker.confluence.host=localhost
worker.confluence.port=8009
worker.confluence.type=ajp13
Very basic, but OK.
---- END workers.properties ----
I configured mod_jk to log as much as possible. This is what it logs (from startup to
"Internal server error"):
What do you mean by "Internal server error": this string is not shown
here. Is there anything in the Apache error log?
---- BEGIN mod_jk log ----
[Thu Oct 11 11:10:04.742 2007] [15501:3078624944] [debug] open_jklog::mod_jk.c
(2652): log time stamp format is '[%a %b %d %H:%M:%S.%Q %Y] '
[Thu Oct 11 11:10:04.742 2007] [15501:3078624944] [debug]
uri_worker_map_open::jk_uri_worker_map.c (423): rule map size is 2
[Thu Oct 11 11:10:04.742 2007] [15501:3078624944] [debug]
uri_worker_map_add::jk_uri_worker_map.c (372): exact rule
'/confluence=confluence' source 'JkMount' was added
[Thu Oct 11 11:10:04.742 2007] [15501:3078624944] [debug]
uri_worker_map_add::jk_uri_worker_map.c (364): wildchar rule
'/confluence/*=confluence' source 'JkMount' was added
[Thu Oct 11 11:10:04.742 2007] [15501:3078624944] [info] init_jk::mod_jk.c
(2775): mod_jk/1.2.25 initialized
[Thu Oct 11 11:10:04.890 2007] [15502:3078624944] [debug] open_jklog::mod_jk.c
(2652): log time stamp format is '[%a %b %d %H:%M:%S.%Q %Y] '
[Thu Oct 11 11:10:04.890 2007] [15502:3078624944] [debug]
uri_worker_map_open::jk_uri_worker_map.c (423): rule map size is 2
[Thu Oct 11 11:10:04.890 2007] [15502:3078624944] [debug]
uri_worker_map_add::jk_uri_worker_map.c (372): exact rule
'/confluence=confluence' source 'JkMount' was added
[Thu Oct 11 11:10:04.890 2007] [15502:3078624944] [debug]
uri_worker_map_add::jk_uri_worker_map.c (364): wildchar rule
'/confluence/*=confluence' source 'JkMount' was added
[Thu Oct 11 11:10:04.891 2007] [15502:3078624944] [info] init_jk::mod_jk.c
(2775): mod_jk/1.2.25 initialized
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug]
map_uri_to_worker::jk_uri_worker_map.c (597): Attempting to map URI
'/confluence/' from 2 maps
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug]
map_uri_to_worker::jk_uri_worker_map.c (609): Attempting to map context URI
'/confluence/*=confluence' source 'JkMount'
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug]
map_uri_to_worker::jk_uri_worker_map.c (624): Found a wildchar match
'/confluence/*=confluence'
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug] jk_handler::mod_jk.c
(2131): Into handler jakarta-servlet worker=confluence r->proxyreq=0
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug]
wc_get_worker_for_name::jk_worker.c (115): found a worker confluence
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug]
wc_maintain::jk_worker.c (323): Maintaining worker confluence
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [debug]
wc_get_name_for_type::jk_worker.c (292): Found worker type 'ajp13'
[Thu Oct 11 11:10:14.351 2007] [15508:3060181904] [error] jk_handler::mod_jk.c
(2223): Could not init service for worker=confluence
this dump doesn't show any lines, which assure, that workers.properties
got found and read. Usually it should dump the contents of the
workers.properties in debug log level.
You should find lines close to the following:
[Tue Oct 16 12:08:49.730 2007] [7002:1] [debug] do_shm_open::jk_shm.c
(402): Truncated shared memory to 28800
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug] do_shm_open::jk_shm.c
(447): Initialized shared memory size=28800 free=28672 addr=0xfee50000
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug]
do_shm_open_lock::jk_shm.c (321): Opened shared memory lock
/some/path/logs/jk-runtime-status.7002.lock
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug] init_jk::mod_jk.c
(2673): Initialized shm:/some/path/logs/jk-runtime-status.7002 (28672 bytes)
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug] init_jk::mod_jk.c
(2690): Setting default connection pool max size to 1
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug]
jk_map_read_property::jk_map.c (492): Adding property 'worker.list' with
value 'confluence' to map.
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug]
jk_map_resolve_references::jk_map.c (752): Checking for references with
prefix worker. with wildcard (recursion 1)
[Tue Oct 16 12:08:49.731 2007] [7002:1] [debug] jk_map_dump::jk_map.c
(590): Dump of map: 'ServerRoot' ->
'/opt/build/test/apache22-prefork-2.2.6sp1_0.9.8e-1'
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug] jk_map_dump::jk_map.c
(590): Dump of map: 'worker.list' -> 'confluence'
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
build_worker_map::jk_worker.c (241): creating worker confluence
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
wc_create_worker::jk_worker.c (145): about to create instance confluence
of ajp13
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
wc_create_worker::jk_worker.c (158): about to validate and init confluence
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
ajp_validate::jk_ajp_common.c (2216): worker confluence contact is
'localhost:8009'
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2346): setting endpoint options:
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2349): keepalive: 0
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2353): timeout: 0
[Tue Oct 16 12:08:49.732 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2357): buffer size: 0
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2361): pool timeout: 0
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2365): connect timeout: 0
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2369): reply timeout: 0
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2373): prepost timeout: 0
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2377): recovery options: 0
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2381): retries: 2
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_init::jk_ajp_common.c (2385): max packet size: 8192
[Tue Oct 16 12:08:49.733 2007] [7002:1] [debug]
ajp_create_endpoint_cache::jk_ajp_common.c (2253): setting connection
pool size to 1 with min 1
[Tue Oct 16 12:08:49.733 2007] [7002:1] [info] init_jk::mod_jk.c (2723):
mod_jk/1.2.26-dev initialized
---- END mod_jk log ----
This is the Virtual Host I configured in Apache. Apache does client
authentication: if you don't have the right SSL certificate, you're not coming
in.
---- BEGIN virtual host ----
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin xxxx
ServerName xxxx
ServerAlias xxxx
RewriteEngine On
RewriteLogLevel 3
RewriteRule ^(/)(.*)$ https://%{HTTP_HOST}/confluence/$2 [R,L]
ServerSignature Off
</VirtualHost>
NameVirtualHost *:443
<VirtualHost *:443>
ServerAdmin xxxx
ServerName xxxx
ServerAlias xxxx
SSLEngine On
SSLVerifyClient require
SSLVerifyDepth 2
SSLCACertificateFile /etc/apache2/ssl/minichain.crt
SSLCertificateChainFile /etc/apache2/ssl/minichain.crt
RewriteEngine On
RewriteLogLevel 3
RewriteRule ^/confluence/ - [R,L]
RewriteRule ^(.*)$ /confluence/$1 [R,L,NE]
DocumentRoot /var/www/confluence/confluence
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/confluence/confluence/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
SSLRequireSSL
</Directory>
Alias /confluence /var/www/confluence/confluence
<Location "/confluence/WEB-INF/*">
deny from all
</Location>
<Location "/confluence/META-INF/*">
deny from all
</Location>
ErrorLog /var/log/apache2/error.log
LogLevel info
CustomLog /var/log/apache2/access.log combined
ServerSignature Off
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel debug
JkMount /confluence confluence
JkMount /confluence/* confluence
JkOptions +ForwardURICompatUnparsed
</VirtualHost>
---- END virtual host ----
Apache is pointed to the workers file in the load/config file for mod_jk, so it's outside
the VirtualHost. As I see the name "confluence" in the mod_jk.log, I assume
Apache parses it when it starts up.
How does that file look like? Are the paths OK? Does that file really
get read in?
Any suggestions?
Greetings,
Hans
Regards,
Rainer
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]