I can see how the server might decode %2f in the path to /. The % character is a special character in urls and should be decoded. If you really mean for the url to literally include '%2f' as part of the file name, I would think the url should be:

http://xxx.xxx.xxx/APIServer/authz/list/master%252fAB?apikey=WEB_INTERFACE_API

Note I replaced the % character with it's encoded form %25, Having said that, I don't think it's a good idea to use special characters like % as part of the resource name. It creates nothing but headaches as the server has to figure out whether the url has already been normalized or not.

--David

Jagadeesh wrote:
Further to my last mail, whenever I try accessing this url

http://xxx.xxx.xxx/APIServer/authz/list/master%2fAB?apikey=WEB_INTERFACE_API

the browser shows exactly the below response

"Not Found

The requested URL /APIServer/authz/list/master/AB was not found on this
server.
Apache/2.2.2 (Fedora) Server at cluster.omnidrive.com Port 80"

The interesting thing is '%2F' has been replaced with a '/'

Any thoughts???

Thanks
Jugs

-----Original Message-----
From: Jagadeesh [mailto:[EMAIL PROTECTED] Sent: Wednesday, January 03, 2007 2:38 PM
To: 'Tomcat Users List'
Subject: RE: MOD_JK Redirection issues

I changed the loglevel to TRACE, But I couldn't find any new log file. The
access_log now shows

61.17.42.35 - - [03/Jan/2007:03:48:05 +0000] "GET
/APIServer/authz/list/master/AB?apikey=WEB_INTERFACE_API HTTP/1.1" 200 1350
"-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.9)
Gecko/20061206 Firefox/1.5.0.9"

61.17.42.35 - - [03/Jan/2007:03:48:44 +0000] "GET
/APIServer/authz/list/master%2fAB?apikey=WEB_INTERFACE_API HTTP/1.1" 404 314
"-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.9)
Gecko/20061206 Firefox/1.5.0.9"

Where the first request returns HTTP/1.1 200 and the 2nd request returns
HTTP/1.1 404.

error_log doesn't have any entries.

I tried sending the same request directly to tomcat and both
/APIServer/authz/list/master/AB?apikey=WEB_INTERFACE_API and
/APIServer/authz/list/master%2fAB?apikey=WEB_INTERFACE_API gave the correct
response and the status was HTTP/1.1 200. The second request returns 404
only when it is passed through mod jk.

Thanks
Jagadeesh



-----Original Message-----
From: Rainer Jung [mailto:[EMAIL PROTECTED] Sent: Wednesday, January 03, 2007 2:03 PM
To: Tomcat Users List
Subject: Re: MOD_JK Redirection issues

Set JkLogLevel to trace and have a look at the JkLogFile.

Jagadeesh wrote:
Thanks for the tip and I will delete the cachelines.

I want jkmod to redirect all the requests to tomcat and it is working fine
except for the request which has %2f in the url before the parameter part.

For eg:
http://loadbalancer.xxx.com/authenticate%2Fjagadeesh?key=12345678 will not
be redirected to tomcat servlet container,
however

http://loadbalancer.xxx.com/authenticate/jagadeesh?key=12345678
http://loadbalancer.xxx.com/authenticate/jagadeesh%2C/abcd?key=12345678
http://loadbalancer.xxx.com/authenticate/jagadeesh?key=12345678&test=%2F

are all getting redirected properly to tomcat. Only those request with %2F
in the URI before the parameter (?) part is being ignored and they are not
going past apache (load balancer).

The error_log says

[Sun Dec 31 04:02:03 2006] [notice] Digest: generating secret for digest
authentication ...
[Sun Dec 31 04:02:03 2006] [notice] Digest: done
[Sun Dec 31 04:02:03 2006] [notice] Apache/2.2.2 (Fedora) configured --
resuming normal operations
[Sun Dec 31 14:55:17 2006] [error] [client 212.241.200.196] client sent
HTTP/1.1 request without hostname (see RFC2616 section 14.23):
/w00tw00t.at.ISC.SANS.DFind:)
[Sun Dec 31 21:58:25 2006] [error] [client 87.118.100.232] client sent
HTTP/1.1 request without hostname (see RFC2616 section 14.23):
/w00tw00t.at.ISC.SANS.DFind:)

Thanks
Jugs

-----Original Message-----
From: Rainer Jung [mailto:[EMAIL PROTECTED] Sent: Wednesday, January 03, 2007 1:42 PM
To: Tomcat Users List
Subject: Re: MOD_JK Redirection issues

OK, from the config I would guess, that you actually forward the request to tomcat, but get the 404 from there. What does the debug log tell you about the request in question?

Small hint not related to your problem: delete the cachesize lines if you've got no special reason for them.

Jagadeesh wrote:
Thanks for the reply Rainer.

I am using tomcat-connectors-1.2.19 and jBoss 4.0.5GA in Fedora Core 5.
Since the binary I downloaded was throwing errors, I build the shared
library mod_jk.so from the source and copied it to the
/usr/lib/httpd/modules/ directory.

Please find below the configuration file (mod-jk.conf) I am using


#=========================================================================
#Loads the module
LoadModule jk_module modules/mod_jk.so

# The workers file
JkWorkersFile conf/worker.properties

# Set the jk log level [debug/error/info]
JkLogLevel debug

# Select the log format
JkLogStampFormat  "[%a %b %d %H:%M:%S %Y]"

# JkOptions indicates to send SSK KEY SIZE
JkOptions +ForwardKeySize +ForwardURIEscaped -ForwardDirectories

# JkRequestLogFormat
JkRequestLogFormat "%w %V %T"

# Mount your applications
JkMount /* loadbalancer

# 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 conf/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 logs/jk.shm

# Add jkstatus for managing runtime data
<Location /jkstatus/>
    JkMount status
    Order deny,allow
    Deny from all
    Allow from 192.168.0.2
</Location>


#=========================================================================
Please find below worker.properties.



#=========================================================================
# Define list of workers that will be used
# for mapping requests
worker.list=loadbalancer,status

# Define Node1
# modify the host as your host IP or DNS name.
worker.node1.port=8009
worker.node1.host=xxx.xxx.xxx.xxx
worker.node1.type=ajp13
worker.node1.lbfactor=1
worker.node1.cachesize=10

# Define Node2
# modify the host as your host IP or DNS name.
worker.node2.port=8009
worker.node2.host= xxx.xxx.xxx.xxx worker.node2.type=ajp13
worker.node2.lbfactor=1
worker.node2.cachesize=10

# Load-balancing behaviour
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node1,node2
worker.loadbalancer.sticky_session=1
worker.list=loadbalancer

# Status worker for managing load balancer
worker.status.type=status

#=====================================================================

I am not using uriworkermap.properties.

Thanks
Jagadeesh

-----Original Message-----
From: Rainer Jung [mailto:[EMAIL PROTECTED] Sent: Wednesday, January 03, 2007 12:51 PM
To: Tomcat Users List
Subject: Re: MOD_JK Redirection issues

Please give detailed information on the version and type of web server and mod_jk you are using and include mod_jk config and the relevant parts of the web server config.

You can increase the log level of mod_jk to debug or even trace to follow, how mod_jk tries to match your requests against the configured URL maps.

Regards,

Rainer

Jagadeesh wrote:
Hi All,

Happy New Year!!!

I am having a few problems when using MOD JK with jBoss application
server.
I am hosting an application in jBoss which uses REST protocol to serve
the
contents. So the GET requests that reach MOD JK can be an encoded string
like
http://loadbalancer.xxx.com/authenticate/user%2fjagadeesh?key=123456789
Here the actual request is
http://loadbalancer.xxx.com/authenticate/user/jagadeesh?key=123456789
where
%2f is the encoded string for '/'. Whenever MOD JK gets a request like
this,
it seems to be ignoring it rather than passing it to the application
server
and I am getting HTTP 404.

I tried accessing the server directly with the request

http://node1.xxx.com/authenticate/user%2fjagadeesh?key=123456789 and
it's
working fine.

Any help to resolve this is greatly appreciated.

Thanks

Jagadeesh
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to