tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dennis Christopher <dchristop...@pixion.com>
Subject Re: /context not working -- mod_jk error: no match for /server-status
Date Tue, 08 Sep 2009 15:36:59 GMT
Rainer,

I've disabled mod_status in the httpd.conf and now the error no longer  
appears in mod_jk.log.

I try http://localhost/sample/ on the server, as you request, and I am  
back to "file not found".

I can reach the server from outside - the default web page shows  up  
okay and references of the form mysite.com:8080/sample have always  
worked.

It may be helpful to see if mod_jk is the problem. Is there any way to  
exercise it apart from what we have been trying?

Dennis
On Sep 7, 2009, at 5:46 AM, Rainer Jung wrote:

> On 04.09.2009 16:01, Dennis Christopher wrote:
>> Rainer,
>>
>> Apparently apache is calling /server-status - I see that mod_status  
>> is
>
> No, apache itself isn't calling anything.
>
>> enabled in httpd.conf and exercises that context.
>>
>> One of the frustrations, and I dont know Apache well, is that the  
>> access
>> log seldom updates.
>> The error log in the same folder does update, but contains little
>> information--apache restarts is about it.
>>
>> I don't know if this helps, but I just tried to access the sample web
>> app from the server machine's own browser
>>
>> httpd://localhost/sample
>>
>> and I get "Bad Gateway! The proxy server received an invalid response
>> from an upstream server
>> Error 502
>> locahost
>
> So that indicates, that Apache is answering via mod_jk (or mod_proxy).
> You should try the correct URL
>
> http://localhost/sample/
>
> though.
>
>> and this does update the access log.
>
> So you have a problem reaching your web server from outside. Firewall,
> DNS, routing or similar stuff.
>
>> Dennis Christopher
>> On Sep 4, 2009, at 12:49 AM, Rainer Jung wrote:
>>
>>> On 03.09.2009 20:24, Dennis Christopher wrote:
>>>> Rainer,
>>>>
>>>> Trying your /sample/ I get the same result.
>>>>
>>>> The log appears to respond to that try but the lines are similar to
>>>> those I originally posted from mod_jk.log.
>>>>
>>>> It's as though every context request is translated into
>>>> '/server-status'.
>>>
>>> Not very likely. Are those entries also appearing in times you are  
>>> not
>>> testing? If so those are someone else, and your own request isn't
>>> handled by the Apache you are looking at. Can you find your  
>>> request in
>>> the access log?
>>>
>>> Go through all config files and find out, what is configured about
>>> /server-status. That URL doesn't have anything to do with mod_jk.
>>>
>>> Regards,
>>>
>>> Rainer
>>>
>>>> the bracketed numbers are:
>>>>
>>>> [221:268597152] [debug] attempting to map URI '/server-status'  
>>>> from 5
>>>> maps.
>>>> .
>>>> .
>>>> [221:268597152] [debug] attempting to map context URI
>>>> '/sample/*.=JBOSS1*' source JKMount
>>>> .
>>>> .
>>>>
>>>> all the entries are marked [debug].
>>>>
>>>> 221 is process httpd with user _www.
>>>>
>>>> Dennis
>>>>
>>>> On Sep 3, 2009, at 1:26 PM, Rainer Jung wrote:
>>>>
>>>>> On 03.09.2009 19:15, Dennis Christopher wrote:
>>>>>> The problem is that I am trying to support simple references to 

>>>>>> my
>>>>>> context without the tomcat port explicitly included.
>>>>>>
>>>>>> example: myexample.com/sample should invoke the web-app sample.
>>>>>
>>>>> You don't have a JkMount for /sample, only one for /sample/*.
>>>>> What happens, if you point your browser to
>>>>>
>>>>> http://my.apache.name/sample/
>>>>>
>>>>> If it doesn't work, extract the lines from your mod_jk log, that  
>>>>> refer
>>>>> to this request. Look for something like
>>>>>
>>>>> ... [A_NUMBER:ANOTHER_NUMBER] ... Attempting to map URI '/sample/'
>>>>> from ...
>>>>>
>>>>> Then note A_NUMBER:ANOTHER_NUMBER which are the process and  
>>>>> thread id
>>>>> used for the request, and get all lines form the log, which have a
>>>>> timestamp close to your request and use the same IDs.
>>>>>
>>>>> Check whether there are any non-debug lines in there. If you  
>>>>> can't see
>>>>> what goes wrong, post those lines.
>>>>>
>>>>> Regards,
>>>>>
>>>>> Rainer
>>>>>
>>>>>> what happens instead: the browser tells me: "file not found".
>>>>>>
>>>>>> looking at catalina.out it seems the request doesnt reach  
>>>>>> Tomcat at
>>>>>> all.
>>>>>>
>>>>>> How I did it: he quick start guide at
>>>>>>
>>>>>> http://tomcat.apache.org/connectors-doc/generic_howto/quick.html
>>>>>>
>>>>>> gives a simple proof of concept for a context setup (/examples").
>>>>>>
>>>>>> which I have followed implicitly. I believe you have already seen
>>>>>> what I
>>>>>> have done with the config files I posted.
>>>>>>
>>>>>> Dennis
>>>>>>
>>>>>> P.S as it may be important - if I try example.com:8080/sample  
>>>>>> the main
>>>>>> page of my web app loads but all of its subreferences, to gif  
>>>>>> images
>>>>>> etc, are broken.
>>>>>>
>>>>>>
>>>>>> On Sep 3, 2009, at 12:48 PM, Rainer Jung wrote:
>>>>>>
>>>>>>> On 03.09.2009 15:34, Dennis Christopher wrote:
>>>>>>>> Rainer,
>>>>>>>>
>>>>>>>> I am not sending /server-status explicitly.
>>>>>>>>
>>>>>>>> The mod_jk log which I excerpted earlier shows the processing
 
>>>>>>>> of
>>>>>>>> server-status before any context is asked for, apparently
when
>>>>>>>> Tomcat
>>>>>>>> starts up.
>>>>>>>>
>>>>>>>> The log continues to repeat these entries - apparently mod_jk
 
>>>>>>>> is
>>>>>>>> looping
>>>>>>>> trying to satisfy this context and never does.
>>>>>>>
>>>>>>> No I'm pretty sure this is not the case. I expect someone has
a
>>>>>>> monitoring tool running or a browser windows with auto-refresh
 
>>>>>>> for
>>>>>>> /server-status and that's what produces those debug log lines
in
>>>>>>> mod_jk.
>>>>>>> No problem per se.
>>>>>>>
>>>>>>> So back to the basic question: what is your problem? What are
 
>>>>>>> you
>>>>>>> trying
>>>>>>> to achieve, what did you do to make it work, how do you test
 
>>>>>>> it, what
>>>>>>> result do you expect and what happens instead?
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Rainer
>>>>>>>
>>>>>>>> I added JkMountCopy All but this had no effect.
>>>>>>>>
>>>>>>>> Dennis
>>>>>>>> On Sep 3, 2009, at 4:18 AM, Rainer Jung wrote:
>>>>>>>>
>>>>>>>>> On 02.09.2009 21:45, Dennis Christopher wrote:
>>>>>>>>>> Rainer,
>>>>>>>>>>
>>>>>>>>>> Thanks for the reply. I was confused in my orginal
post: I  
>>>>>>>>>> am not
>>>>>>>>>> using
>>>>>>>>>> JBoss at all, only mod_jk.
>>>>>>>>>>
>>>>>>>>>> The file contents are as follows below.
>>>>>>>>>>
>>>>>>>>>> Apache has a hosts directory, but I'm not sure if
the files
>>>>>>>>>> matter.
>>>>>>>>>> They
>>>>>>>>>> are either the apache .default files or slight  
>>>>>>>>>> modifications of
>>>>>>>>>> them,
>>>>>>>>>> e.g. virtual_host_global.conf contains just:
>>>>>>>>>>
>>>>>>>>>> Listen *:80
>>>>>>>>>
>>>>>>>>> I don't understand, why you test this with a request
>>>>>>>>> /server-status.
>>>>>>>>> That doesn't make sense, because you don't want /server-status
>>>>>>>>> to be
>>>>>>>>> forwarded by mod_jk and in fact you didn't configure
it.
>>>>>>>>>
>>>>>>>>> So choose a better URL to test (one of the URLs you have
a  
>>>>>>>>> JkMount
>>>>>>>>> for)
>>>>>>>>> and add "JkMountCopy All".
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>>
>>>>>>>>> Rainer
>>>>>>>>>
>>>>>>>>>> 1. uriworkermap.properties -- not used
>>>>>>>>>>
>>>>>>>>>> 2. from apache2/httpd.conf:
>>>>>>>>>>
>>>>>>>>>> LoadModule jk_module libexec/apache2/mod_jk.so
>>>>>>>>>> .
>>>>>>>>>> .
>>>>>>>>>> <IfModule mod_jk.c>
>>>>>>>>>>    JKWorkersFile /etc/apache2/workers.properties
>>>>>>>>>>    JKLogFile /var/log/apache2/mod_jk.log
>>>>>>>>>>    JKLogLevel debug
>>>>>>>>>>    JKShmFile /var/log/apache2/mod_jk.shm
>>>>>>>>>>    JKMount /*.jsp JBoss1
>>>>>>>>>>    JKMount /servlet/* JBoss1
>>>>>>>>>>    JKMount /examples/* JBoss1
>>>>>>>>>>    JKMount /picturetalk/* JBoss1
>>>>>>>>>>    JKMount /sample/* JBoss1
>>>>>>>>>> </IfModule>
>>>>>>>>>> .
>>>>>>>>>> .
>>>>>>>>>>
>>>>>>>>>> 3. from apache2/workers.properties:
>>>>>>>>>>
>>>>>>>>>> worker.list=JBoss1, JBoss2, loadbalancer, blojsomworker
>>>>>>>>>>
>>>>>>>>>> # ------------------------
>>>>>>>>>> # First JBoss server
>>>>>>>>>> # ------------------------
>>>>>>>>>> worker.JBoss1.port=8009
>>>>>>>>>> worker.JBoss1.host=127.0.0.1
>>>>>>>>>> worker.JBoss1.type=ajp13
>>>>>>>>>>
>>>>>>>>>> # Specify the size of the open connection cache.
>>>>>>>>>> #worker.JBoss1.cachesize
>>>>>>>>>>
>>>>>>>>>> #
>>>>>>>>>> # Specifies the load balance factor when used with
>>>>>>>>>> # a load balancing worker.
>>>>>>>>>> # Note:
>>>>>>>>>> #  ----> lbfactor must be > 0
>>>>>>>>>> #  ----> Low lbfactor means less work done by
the worker.
>>>>>>>>>> worker.JBoss1.lbfactor=100
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> # ------------------------
>>>>>>>>>> # Second JBoss server
>>>>>>>>>> # ------------------------
>>>>>>>>>> #worker.JBoss2.port=9008
>>>>>>>>>> #worker.JBoss2.host=localhost
>>>>>>>>>> worker.JBoss2.lbfactor=100
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> # ------------------------
>>>>>>>>>> # Load Balancer worker
>>>>>>>>>> # ------------------------
>>>>>>>>>>
>>>>>>>>>> #
>>>>>>>>>> # The loadbalancer (type lb) worker performs weighted
round- 
>>>>>>>>>> robin
>>>>>>>>>> # load balancing with sticky sessions.
>>>>>>>>>> # Note:
>>>>>>>>>> #  ----> If a worker dies, the load balancer will
check its  
>>>>>>>>>> state
>>>>>>>>>> #        once in a while. Until then all work is
redirected  
>>>>>>>>>> to
>>>>>>>>>> peer
>>>>>>>>>> #        worker.
>>>>>>>>>> worker.loadbalancer.type=lb
>>>>>>>>>> worker.loadbalancer.balanced_workers=JBoss1, JBoss2
>>>>>>>>>>
>>>>>>>>>> # ------------------------
>>>>>>>>>> # Blojsom worker
>>>>>>>>>> # ------------------------
>>>>>>>>>> #
>>>>>>>>>> # Worker created specifically for Blojsom.
>>>>>>>>>> worker.blojsomworker.port=1279
>>>>>>>>>> worker.blojsomworker.host=127.0.0.1
>>>>>>>>>> worker.blojsomworker.type=ajp13
>>>>>>>>>> worker.blojsomworker.lbfactor=100
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> # END workers.properties
>>>>>>>>>> #
>>>>>>>>>>
>>>>>>>>>> On Sep 2, 2009, at 2:05 PM, Rainer Jung wrote:
>>>>>>>>>>
>>>>>>>>>>> On 27.08.2009 15:45, Dennis Christopher wrote:
>>>>>>>>>>>> environment: Tomcat 6.0.18 under apache2
on Mac OS X  
>>>>>>>>>>>> Server 10.5
>>>>>>>>>>>> (Leopard).
>>>>>>>>>>>>
>>>>>>>>>>>> I am using a mod_jk connector with JBoss.
>>>>>>>>>>>>
>>>>>>>>>>>> I am having trouble getting context urls
of the form
>>>>>>>>>>>> website.my.com/myapplication honoured (or
even
>>>>>>>>>>>> localhost/myapplication).
>>>>>>>>>>>> (Safari:File not found).I have googled  the
error messages
>>>>>>>>>>>> below but
>>>>>>>>>>>> can't find anything applicable to my setup.
>>>>>>>>>>>>
>>>>>>>>>>>> The quick start guide at
>>>>>>>>>>>>
>>>>>>>>>>>> http://tomcat.apache.org/connectors-doc/generic_howto/quick.html
>>>>>>>>>>>>
>>>>>>>>>>>> gives a simple proof of concept for a connector
setup
>>>>>>>>>>>> (/examples").
>>>>>>>>>>>> However, this does not work,
>>>>>>>>>>>> though I have followed the editing of the
configuration  
>>>>>>>>>>>> files
>>>>>>>>>>>> exactly
>>>>>>>>>>>> (using JKMount in the httpd.conf etc)
>>>>>>>>>>>>
>>>>>>>>>>>> I get an error in mod_jk.log (set to debug
level):
>>>>>>>>>>>>
>>>>>>>>>>>> [Tue Aug 25 12:41:11.783 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> map_uri_to_worker_ext::jk_uri_worker_map.c
(1036): (TEST)
>>>>>>>>>>>> Attempting to
>>>>>>>>>>>> map URI '/server-status' from 5 maps
>>>>>>>>>>>> [Tue Aug 25 12:41:11.783 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> map_uri_to_worker_ext::jk_uri_worker_map.c
(1039):  
>>>>>>>>>>>> Initial match
>>>>>>>>>>>> value:for URI '/server-status' is -1.
>>>>>>>>>>>> [Tue Aug 25 12:41:11.783 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> find_match::jk_uri_worker_map.c (850): Attempting
to map
>>>>>>>>>>>> context URI
>>>>>>>>>>>> '/examples/*=JBoss1' source 'JkMount'
>>>>>>>>>>>> [Tue Aug 25 12:41:11.783 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> find_match::jk_uri_worker_map.c (850): Attempting
to map
>>>>>>>>>>>> context URI
>>>>>>>>>>>> '/servlet/*=JBoss1' source 'JkMount'
>>>>>>>>>>>> [Tue Aug 25 12:41:11.783 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> find_match::jk_uri_worker_map.c (850): Attempting
to map
>>>>>>>>>>>> context URI
>>>>>>>>>>>> '/sample/*=JBoss1' source 'JkMount'
>>>>>>>>>>>> [Tue Aug 25 12:41:11.784 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> find_match::jk_uri_worker_map.c (850): Attempting
to map
>>>>>>>>>>>> context URI
>>>>>>>>>>>> '/*.jsp=JBoss1' source 'JkMount'
>>>>>>>>>>>> [Tue Aug 25 12:41:11.784 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> map_uri_to_worker_ext::jk_uri_worker_map.c
(1047): Match
>>>>>>>>>>>> value:for URI
>>>>>>>>>>>> '/server-status' is -1.
>>>>>>>>>>>> [Tue Aug 25 12:41:11.784 2009] [211:2688784416]
[debug]
>>>>>>>>>>>> jk_translate::mod_jk.c (3536): no match for
/server- 
>>>>>>>>>>>> status found
>>>>>>>>>>>>
>>>>>>>>>>>> Any help on how to diagnose what the seeming
error is
>>>>>>>>>>>> pointing to
>>>>>>>>>>>> would
>>>>>>>>>>>> be much appreciated.
>>>>>>>>>>>
>>>>>>>>>>> This log snippet is not useful, because the request
you  
>>>>>>>>>>> used was
>>>>>>>>>>> for
>>>>>>>>>>> /server-status, which is most likely not a request
you want
>>>>>>>>>>> mod_jk to
>>>>>>>>>>> send to JBoss.
>>>>>>>>>>>
>>>>>>>>>>> Please post all your JK directives from your
httpd.conf  
>>>>>>>>>>> and the
>>>>>>>>>>> files
>>>>>>>>>>> included in that. Also post your workers.properties,
and  
>>>>>>>>>>> if you
>>>>>>>>>>> use it
>>>>>>>>>>> the uriworkermap.properties file.
>>>>>>>>>>>
>>>>>>>>>>> The most common cause why simple setups do not
work is the  
>>>>>>>>>>> use of
>>>>>>>>>>> virtual hosts in the Apache configuration. If
you have  
>>>>>>>>>>> virtual
>>>>>>>>>>> hosts,
>>>>>>>>>>> you have to put JkMount into the virtual hosts,
or you set
>>>>>>>>>>> "JkMountCopy
>>>>>>>>>>> All" in the global part of the configuration.
>>>>>>>>>>>
>>>>>>>>>>> Regards,
>>>>>>>>>>>
>>>>>>>>>>> Rainer
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message