1

What I'm trying to do and I've got stuck is:

I've got apache server that will catch certain url's and for some of them, he will use ProxyPass (or mod_rewrite) to pass something as reverse proxy to another apache instance.

So I've got url like this:

/index.php/info?format=xml&token=SOMENUMERICTOKEN&token=SUMENUMERICTOKEN

I've tried :

PassProxy /index.php/info?format=xml https://1.2.3.4:567/index.php/info?format=xml

and relevant ProxyReverse but it's not working

Also tried Rewrite with same lines and [P] ending for proxying.

Non of them work.

They would work if i end with /index.php but I cannot allow access to index.php

2 Answers 2

2

ProxyPass only operates on the part of the URL matched, and not on the query string. IF you include the query string in the pattern you will never get a match.

So in order to do what you want you would use something like:

ProxyPass /index.php/info https://1.2.3.4:567/index.php/info

Although in this case you probably could even use:

ProxyPass / https://1.2.3.4:567/

Basically see proxypass as a sort of "search and replace". "ProxyPass A B" basically means "find A in the URL en if found, replace with B".

0

OK.

I've just left /index.php/info in ProxyPass and it worked. Maybe it was something with escaping ? mark.

Works.

2
  • ProxyPass only operates on the URL. So you should ignore the query string. The query string will just be passed on. If you need to manipulate the query string as well you'll need a ReWriteRule. May 9, 2014 at 14:23
  • Is this a question in an answer? May 18 at 20:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.