On Mon, Jun 22, 2020 at 5:04 PM jean-frederic clere <jfcl...@gmail.com> wrote: > > On 22/06/2020 16:12, Yann Ylavic wrote: > > On Mon, Jun 22, 2020 at 2:44 PM Eric Covener <cove...@gmail.com> wrote: > >> > >>> You need to set: > >>> ProxyMappingDecoded off > >>> in your vhost (or directory) for servlet mapping to be active, with a > >> > >> Does it work in directory context? pre_trans is before location_walk. > > > > Argh no, didn't think of it :/ > > > > For this we have to add a third location walk in > > ap_process_request_internal(), something like the attached. > > To minimize impact, I save the original r->uri and don't re-walk if it > > didn't change, that should address most common cases IMHO. > > > > Would that work? > > > > Do we want: > curl -v --path-as-is "http://localhost:8000/docs/..;food=bar/test/index.jsp" > ProxyMappingDecoded Off > <Location "/docs"> > ProxyPass ajp://localhost:8009/docs secret=%A1b2!@ mapping=servlet > </Location> > <Location "/test"> > ProxyPass ajp://localhost:8009/test secret=%A1b2!@ mapping=servlet > </Location> > To map to tomcat? > > like: > ProxyMappingDecoded Off > ProxyPass /docs ajp://localhost:8009/docs secret=%A1b2!@ mapping=servlet > ProxyPass /test ajp://localhost:8009/test secret=%A1b2!@ mapping=servlet
Yes, that's the idea. I didn't test, but the patch is supposed to allow for that, or: <Proxy "ajp://localhost:8009/docs"> ProxyMappingDecoded Off ProxySet secret=%A1b2!@ mapping=servlet ProxyPass /docs </Proxy> <Proxy "ajp://localhost:8009/test"> ProxyMappingDecoded Off ProxySet secret=%A1b2!@ mapping=servlet ProxyPass /test </Proxy> Regards; Yann.