If I understood correctly, the first time start_session is used, the server
will send both a cookie AND rewrite the links in the page with the sessionid
appended to it. This seems logical since at the first call for a session the
server can not know whether the browser will accept cookies or not. However,
if I enclose the start_session in ob_start() and ob_end_flush() even on the
first page there is no link rewrite (ie no ?phpsessid=... is added to the
links). How can this be explained? With the output buffering the server will
send the cookie right after the flush and perhaps the browser sends back a
kind of acknowledgement before the page can be rewritten by the server?
However I checked the HTTP communication between server and browser and did
not find a significant difference between the case with and without output
buffering. The only thing I saw was a different port being used for some
initial TCP/IP communication. However, I'm not an expert but would like to
know the explanation of this behaviour anyway,

MPL







-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to