Mantis - Resin
Viewing Issue Advanced Details
937 major always 02-14-06 09:46 04-07-06 15:23
anonymous  
ferg  
normal  
closed 3.0.14  
not fixable  
none    
none  
0000937: mod_caucho (in apache) passes decoded url to srun
mod_caucho with apache (1.3, 2.0, and 2.2) seems to decode all urls before passing them to the srun server. This is a problem in that our application is dependent on URLs that contain product names. These names contain many special characters. The ones that seem to be the most troublesome are "%", "?", and "\". For obvious reasons these characters need to be encoded on the URL until we parse the URL in our struts actions.
try passing the following through a apache/mod_caucho configuration.
http://somewebsite/product/Womens%5CFootwear%5CDress_Casual%5CLoafer/prods.do [^]
The srun version will show up in the resin access log as:
http://somewebsite/product/Womens\Footwear\Dress_Casual\Loafer/prods.do [^]

Then do the same through the resin http server. The resin http server will not unencode the URL. Again, view the access log:
http://somewebsite/product/Womens%5CFootwear%5CDress_Casual%5CLoafer/prods.do [^]

We are running on Redhat 9 (Alos tried on OS X, same results)
jdk 1.5
resin 3.0.14
apache 1.3 (I've tried on all three latest versions of apache)

Notes
(0001054)
ferg   
04-07-06 15:23   
You will need to use Resin standalone in that case.

Because of Apache's mod_rewrite, Resin needs to use r->uri from Apache (not r->unparsed_uri). Changing to use r->unparsed_uri would break any use of mod_rewrite.

Using Resin standalone will avoid this issue. (Besides, standalone is faster and less complicated.)