Sure, but his phpinfo() does show REDIRECT_* vars as it is the server doing the redirect. An external redirect (HTTP Location header) is not going to show anything as it has nothing to do with the server.
-Rasmus On Tue, 24 Dec 2002, John Nichel wrote: > He's looking to see if there is a redirect. The thing I'm seeing is > that if the redirect comes from a php header call, or a url rewrite from > the server, nothing is set for REDIRECT_URL or HTTP_REFERER. This is > the $_SERVER output I get on my machine from a url rewrite and php header > > Array > ( > [DOCUMENT_ROOT] => /webserver/docs/vhosts/backup > [HTTP_ACCEPT] => > >text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,text/css,*/*;q=0.1 > [HTTP_ACCEPT_CHARSET] => ISO-8859-1, utf-8;q=0.66, *;q=0.66 > [HTTP_ACCEPT_ENCODING] => gzip, deflate, compress;q=0.9 > [HTTP_ACCEPT_LANGUAGE] => en-us, en;q=0.50 > [HTTP_CACHE_CONTROL] => max-age=0 > [HTTP_CONNECTION] => keep-alive > [HTTP_COOKIE] => PHPSESSID=a4a0a7c613f817b0344ff70af03b88ae > [HTTP_HOST] => www.backup.jcn > [HTTP_KEEP_ALIVE] => 300 > [HTTP_USER_AGENT] => Mozilla/5.0 (X11; U; Linux i586; en-US; > rv:1.0.1) Gecko/20020823 Netscape/7.0 > [PATH] => /sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin > [REMOTE_ADDR] => 11.11.68.1 > [REMOTE_PORT] => 2380 > [SCRIPT_FILENAME] => /webserver/docs/vhosts/backup/referer2.php > [SERVER_ADDR] => 11.11.68.3 > [SERVER_ADMIN] => [EMAIL PROTECTED] > [SERVER_NAME] => www.backup.jcn > [SERVER_PORT] => 80 > [SERVER_SIGNATURE] => Apache/1.3.26 Server at www.backup.jcn Port 80 > [SERVER_SOFTWARE] => Apache/1.3.26 (Unix) PHP/4.2.3 mod_perl/1.27 > [GATEWAY_INTERFACE] => CGI/1.1 > [SERVER_PROTOCOL] => HTTP/1.1 > [REQUEST_METHOD] => GET > [QUERY_STRING] => > [REQUEST_URI] => /referer2.php > [SCRIPT_NAME] => /referer2.php > [PATH_TRANSLATED] => /webserver/docs/vhosts/backup/referer2.php > [PHP_SELF] => /referer2.php > [argv] => Array > ( > ) > > [argc] => 0 > ) > > But if I use JavaScript or Meta refresh to do the redirect, I get the > HTTP_REFERER. I also get it when I link to the page from another. I > didn't get any REDIRECT variables in any of the cases. Are these > supposed to be in the $_SERVER array? > > Rasmus Lerdorf wrote: > > Isn't the question about REMOTE_HOST? Why are you talking about referer > > stuff at all? The two have nothing to do with each other. REMOTE_HOST is > > the resolved version of REMOTE_ADDR and is rarely set as it is way too > > time consuming to do a reverse DNS lookup on each ip that connects to your > > web server. But, REMOTE_ADDR is always set and you can use that to see > > where requests are coming from. But this has nothing to do with the > > referer. > > > > If you are looking to detect the redirect, then the presence of REDIRECT_* > > variables will tell you that, but again, this has nothing to do with the > > referer. > > > > If you want to know where something was redirect from, try REDIRECT_URL. > > > > -Rasmus > > > > On Tue, 24 Dec 2002, John Taylor-Johnston wrote: > > > > > >>John, > >>CC: a copy of your next posts. I'll be back on Friday. Jingle Bells and all. > >>Thanks for thinking about it. What about turning on: session.referer_check = > >>Or soemthing else in php.ini > >> > >>John > >> > >>John Nichel wrote: > >> > >> > >>>Well, that won't help then. I saw that REMOTE_PORT was different in > >>>your last two emails, but if it's ever changing.... > >>> > >>>I'm doing a little testing here on my end and have discovered that > >>>REFERER isn't set if the server is doing a redirect. I made a simple > >>>little two page script. The first page just contained this (the site > >>>doesn't have DNS outside of my network)... > >>> > >>>header ( "Location: http://www.backup.jcn/referer2.php" ); > >>> > >>>and referer2.php contained... > >>> > >>>print_r ( $_SERVER ); > >>> > >>>When I went through the redirect, REFERER was NOT set, but when I > >>>clicked on a link from another page, it was set. I'll look at it a bit > >>>longer to see if there is anything out there to tell it was redirected, > >>>but it's not looking good. > >>> > >>>John Taylor-Johnston wrote: > >>> > >>>>>[SERVER_PORT] => 80 > >>>> > >>>> > >>>>Server port does not change. > >>>> > >>>>Will it do anything to change my php.ini? > >>>> > >>>>session.referer_check = > >>>> > >>>>It is set to nothing at the moment, copied and pasted. > >>>> > >>>>How do I check for the port number? My redirects come through: > >>>> > >>>> > >>>> > >>>>>[REMOTE_PORT] => 1070 > >>>>>[REMOTE_PORT] => 1074 > >>>> > >>>> > >>>>They are also increasing. It's a bit like a counter :) no? > >>>> > >>>>Even the link to http://compcanlit.usherbrooke.ca makes remote_port increase: > >>>> > >>>> > >>>> > >>>>>[REMOTE_PORT] => 1079 > >>>> > >>>> > >>>>John > >>>> > >>>>John Nichel wrote: > >>>> > >>>> > >>>> > >>>>>Like John said, REFERER isn't always set, and that looks to be the case > >>>>>here. One thing I did notice is that the redirect comes thru on a > >>>>>different port. If this is consistant, you may be able to use this. > >>>>> > >>>>>John Taylor-Johnston wrote: > >>>>> > >>>>> > >>>>>>>echo ( "<pre>\n" ); > >>>>>>>print_r ( $_SERVER ); > >>>>>>>echo ( "</pre>\n" ); > >>>>>> > >>>>>> > >>>>>>On the redirect from http://compcanlit.ca/, I get: > >>>>>> > >>>>>>Array > >>>>>>( > >>>>>> [DOCUMENT_ROOT] => /var/www/html2 > >>>>>> [HTTP_ACCEPT] => image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, >image/png, */* > >>>>>> [HTTP_ACCEPT_CHARSET] => iso-8859-1,*,utf-8 > >>>>>> [HTTP_ACCEPT_ENCODING] => gzip > >>>>>> [HTTP_ACCEPT_LANGUAGE] => en,fr > >>>>>> [HTTP_CONNECTION] => Keep-Alive > >>>>>> [HTTP_HOST] => compcanlit.usherbrooke.ca > >>>>>> [HTTP_USER_AGENT] => Mozilla/4.79 [en]C-CCK-MCD (Win98; U) > >>>>>> [PATH] => /sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin > >>>>>> [REDIRECT_STATUS] => 200 > >>>>>> [REDIRECT_URL] => / > >>>>>> [REMOTE_ADDR] => 142.169.108.39 > >>>>>> [REMOTE_PORT] => 1066 > >>>>>> [SCRIPT_FILENAME] => /var/www/html2/index.html > >>>>>> [SERVER_ADDR] => 132.210.13.10 > >>>>>> [SERVER_ADMIN] => root@localhost > >>>>>> [SERVER_NAME] => compcanlit.usherbrooke.ca > >>>>>> [SERVER_PORT] => 80 > >>>>>> [SERVER_SIGNATURE] => > >>>>>>Apache/1.3.27 Server at compcanlit.usherbrooke.ca Port 80 > >>>>>> > >>>>>> > >>>>>> [SERVER_SOFTWARE] => Apache/1.3.27 (Unix) (Red-Hat/Linux) mod_ssl/2.8.12 >OpenSSL/0.9.6b DAV/1.0.3 PHP/4.1.2 mod_perl/1.26 > >>>>>> [GATEWAY_INTERFACE] => CGI/1.1 > >>>>>> [SERVER_PROTOCOL] => HTTP/1.0 > >>>>>> [REQUEST_METHOD] => GET > >>>>>> [QUERY_STRING] => > >>>>>> [REQUEST_URI] => / > >>>>>> [SCRIPT_NAME] => /index.html > >>>>>> [PATH_TRANSLATED] => /var/www/html2/index.html > >>>>>> [PHP_SELF] => /index.html > >>>>>> [argv] => Array > >>>>>> ( > >>>>>> ) > >>>>>> > >>>>>> [argc] => 0 > >>>>>> > >>>>>> > >>>>>> > >>>>> > >>>>>-- > >>>>>By-Tor.com > >>>>>It's all about the Rush > >>>>>http://www.by-tor.com > >>>> > >>>> > >>>>-- > >>>>John Taylor-Johnston > >>>>----------------------------------------------------------------------------- > >>>>"If it's not open-source, it's Murphy's Law." > >>>> > >>>> ' ' ' Collège de Sherbrooke: > >>>> ô¿ô http://www.collegesherbrooke.qc.ca/languesmodernes/ > >>>> - Université de Sherbrooke: > >>>> http://compcanlit.ca/ > >>>> 819-569-2064 > >>>> > >>>> > >>>> > >>> > >>>-- > >>>By-Tor.com > >>>It's all about the Rush > >>>http://www.by-tor.com > >> > >>-- > >>John Taylor-Johnston > >>----------------------------------------------------------------------------- > >>"If it's not open-source, it's Murphy's Law." > >> > >> ' ' ' Collège de Sherbrooke: > >> ô¿ô http://www.collegesherbrooke.qc.ca/languesmodernes/ > >> - Université de Sherbrooke: > >> http://compcanlit.ca/ > >> 819-569-2064 > >> > >> > >> > >>-- > >>PHP General Mailing List (http://www.php.net/) > >>To unsubscribe, visit: http://www.php.net/unsub.php > >> > > > > > > > > > -- > By-Tor.com > It's all about the Rush > http://www.by-tor.com > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php