Athlon1600 / php-proxy

A web proxy script written in PHP and built as an alternative to Glype.
https://www.php-proxy.com
MIT License
298 stars 158 forks source link

Does not work with google.com #7

Closed turmune closed 9 years ago

turmune commented 9 years ago

It load up the the http://www.google.com front page fine but when I type anything into the search bar it gives:

"405. That’s an error. The request method POST is inappropriate for the URL /search. That’s all we know."

bennetthaselton commented 9 years ago

On 2/6/2015 8:29 PM, turmune wrote:

It load up the the http://www.google.com front page fine but when I type anything into the search bar it gives:

"405. That’s an error. The request method POST is inappropriate for the URL /search. That’s all we know."

— Reply to this email directly or view it on GitHub https://github.com/Athlon1600/php-proxy/issues/7.

The bug is apparently that the script converts GET request forms into POST. So for example if you go to this page: http://peacefire.org/testpages/test-get-form.html without using a proxy, and submit the form, it takes you to http://peacefire.org/showall.cgi?textfield=abc which is a script that displays all available environment variables -- one of them is "REQUEST_METHOD: GET".

However, if you go to https://unblockvideos.com/ and load the same page through the proxy and submit the form, the resulting script shows "REQUEST_METHOD: POST".

Many CGI scripts will accept data submitted as both GET and POST, so with those scripts there won't be a problem. The problem is that some scripts -- like the Google search script, apparently -- will only accept data submitted as GET, presumably because accepting data submitted via POST has trickier security implications (such as the fact that it's possible to submit much longer data strings in a POST request), so it's safer just to turn it off when it's not needed.

Bennett

Athlon1600 commented 9 years ago

I'm very well aware of this problem, but changing request method from POST to GET is more complicated and ugly than it looks. It's on my TODO list don't you worry.