FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Apache and php to show http request headers.
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Apache and php to show http request headers. [message #178501 is a reply to message #178498] Mon, 25 June 2012 17:09 Go to previous messageGo to previous message
Luuk is currently offline  Luuk
Messages: 329
Registered: September 2010
Karma:
Senior Member
On 25-06-2012 18:10, M. Strobel wrote:
> Am 25.06.2012 16:44, schrieb Jerry Stuckle:
>> On 6/25/2012 10:42 AM, Tony Mountifield wrote:
>>> In article <js9pqt$1lm$1(at)dont-email(dot)me>,
>>> Jerry Stuckle <jstucklex(at)attglobal(dot)net> wrote:
>>>> On 6/25/2012 9:36 AM, Tony Mountifield wrote:
>>>> > In article <klslb9-ogk(dot)ln1(at)luuk(dot)invalid(dot)lan>, Luuk <luuk(at)invalid(dot)lan> wrote:
>>>> >> On 25-06-2012 12:15, brumik wrote:
>>>> >>>
>>>> >>> I need to test various http requests from an application and am using
>>>> >>> Apache/PHP on ubuntu to display the http request headers. The
>>>> >>> application proxy forwards http requests to the apache server's IP
>>>> >>> address like as follows:
>>>> >>>
>>>> >>> 192.168.40.1/test/test.html
>>>> >>>
>>>> >>> where 192.168.40.1 is the apache server.
>>>> >>>
>>>> >>> I have a php script to dump the headers as follows:
>>>> >>>
>>>> >>> <?php
>>>> >>> foreach($_SERVER as $h=>$v)
>>>> >>> #if(ereg('HTTP_(.+)',$h,$hp))
>>>> >>> echo "<li>$h = $v</li>\n";
>>>> >>> header('Content-type: text/html');
>>>> >>> ?>
>>>> >>>
>>>> >>> The problem is that to show the headers, I redirect 192.168.40.1/* to
>>>> >>> the above index.php page using the following redirect:
>>>> >>>
>>>> >>> Options +FollowSymlinks
>>>> >>> RewriteEngine on
>>>> >>> RewriteCond %{REQUEST_URI} !/index.php$
>>>> >>>
>>>> >>> RewriteRule $ /index.php [R=302,L]
>>>> >>>
>>>> >>> However the php request headers page always shows the URI as /
>>>> >>> index.php as opposed to the 'original' URI requested (/test/
>>>> >>> test.html).
>>>> >>>
>>>> >>> How can I get it to show the 'original' URI requested? is this
>>>> >>> something that can be done in PHP or is it apache specific?
>>>> >>>
>>>> >>
>>>> >> Its apache, because it is redirecting, so PHP does only know about the
>>>> >> redirected request, and does have no knowledge of how this request
>>>> >> reached PHP.
>>>> >
>>>> > You could try the Proxy flag in the RewriteRule:
>>>> >
>>>> > RewriteRule $ http://localhost/index.php [P,L]
>>>>
>>>> He can try a lot of things which won't work.
>>>
>>> Well, yes, but I didn't think my suggestion was one of them. If you
>>> think it is, I would like to know why, so that I would know for the
>>> future, rather than just be the target of a bit of sarcasm. You could
>>> try something like "That won't work because...." (if applicable).
>>>
>>> The OP's original rule obviously wouldn't work, because it tells the
>>> client browser to generate a completely fresh request with the new
>>> location. In contrast, the Proxy flag in RewriteRule is supposed to
>>> make Apache proxy the original request to the new location (even to
>>> itself if necessary). So the request's original headers should still
>>> be present, with perhaps one or more proxy headers.
>>>
>>> Cheers
>>> Tony
>>>
>>
>> It's off topic in this newsgroup. If you want to know why, try an appropriate
>> newsgroup.
>>
>
> Truth is never off topic.
>
> /Str.
>

Ok,

Its about apache, the webserver that most of the time sits in front of PHP,

In their docs (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html):
An ordinary forward proxy is an intermediate server that sits between
the client and the origin server. In order to get content from the
origin server, the client sends a request to the proxy naming the origin
server as the target and the proxy then requests the content from the
origin server and returns it to the client. The client must be specially
configured to use the forward proxy to access other sites.

The important part here is:
"the proxy then requests the content from the origin server"

Therefore PHP does know nothing about a proxyserver......
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Simulating a Form Method=Post submission in PHP
Next Topic: File upload on iOS
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Thu Nov 28 12:44:27 GMT 2024

Total time taken to generate the page: 0.04841 seconds