Re: [Phplib-users] Wierd problems with fallback mode in Session
Brought to you by:
nhruby,
richardarcher
|
From: Kevin F. <fre...@ip...> - 2003-05-06 22:46:16
|
Should it use $_SERVER['HTTP_HOST'] ?
>>> "Nathaniel Price" <np...@te...> 05/06/03 03:40PM >>>
Okay, I've been having some strange problems using PHPlib 7.4-pre2's
fallback mode. On any page where I used Sessions, the first time I
visit the
site, I would get a blank page, but then, upon reloading, everything
would
proceed normally. This would happen even when cookies are enabled on
the
browser.
So, I did some debugging with Proxomitron's HTTP header log, and found
that
on the first try, the server responded with:
+++RESP 3872+++
HTTP/1.1 302 Found
Date: Tue, 06 May 2003 19:26:21 GMT
Server: Apache/1.3.6 (Unix) PHP/3.0.12
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Last-Modified: Tue, 06 May 2003 19:26:21 GMT
Cache-Control: post-check=0, pre-check=0
Pragma: no-cache
Status: 302 Moved Temporarily
Location: http://?SP_Session=3a337518caec67dfd76eefb99ff1c856
Set-Cookie: SP_Session=3a337518caec67dfd76eefb99ff1c856; path=/
Transfer-Encoding: chunked
Content-Type: text/html
+++CLOSE 3872+++
instead of the expected HTTP/1.1 200 OK. The second try, as noted,
worked
fine.
Looking through the source to session.inc, I found that fallback mode
uses a
redirect to add the session to the get query string (see lines 417 to
437 of
session.inc):
header("Location: " . $PROTOCOL . "://" .
$HTTP_SERVER_VARS["HTTP_HOST"] . $this->self_url());
However, on my system (PHP 3.0.12 with Apache 1.3, although I have also
seen
the same behavior on another server with PHP 4.2.2 and Apache 2.0) it
appears that the $HTTP_SERVER_VARS is always empty, thus PHPlib is
unable to
construct a proper URL to redirect to. I worked around this problem for
now
by disabling fallback mode for now, and I imagine that if I had some
more
time to work it out, I could find a more suitable fix (which is one of
the
reasons I'm asking this).
So, my questions are:
1) Why does fallback mode get invoked even when cookies are enabled?
2) Does anyone know what would keep $HTTP_SERVER_VARS from being
populated?
I checked with phpinfo() and PHP is aware of all of the necessary
values,
but for some reason they don't make it to $HTTP_SERVER_VARS. The PHP
documentation doesn't mention anything that seems applicable, but I
might
not be looking in the right place.
Thanks in advance.
_________________________________
Nathaniel Price <np...@te...>
Webmaster
-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise
solutions
www.enterpriselinuxforum.com
_______________________________________________
Phplib-users mailing list
Php...@li...
https://lists.sourceforge.net/lists/listinfo/phplib-users
|