This is a discussion on Session bug? within the PHP Language forums, part of the PHP Programming Forums category; Sorry if I missed the answer in this NG. Searching hasn't turned up anything other than permissions issues, which ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Sorry if I missed the answer in this NG. Searching hasn't turned up
anything other than permissions issues, which this isn't. OS: Red Hat 8 PHP: 4.3.3 HTTPD: Apache 2.0.47 In PHP.INI: session_autostart = 1; session_use_cookies = 0; How sessions are maintained: Visitor hits the page -> if no session_id in the URI, get session_id and add to all URIs on the page, carrying over to further pages via query string in URI. Session Issues: (1) Even though sessions are being written and stored, I am receiving many error_log entries: PHP Warning: Unknown(): The session id contains invalid characters, valid characters are only a-z, A-Z and 0-9 in Unknown on line 0 PHP Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0 Now why would PHP write itself a session_id that it couldn't use? I'm certainly not writing it. Maybe incomplete or mangled URIs are being written, however I can't tell which ones, because everything is working fine on the sites, URI-wise...every dynamic link goes where I want it to and carries over the session_id correctly in the query string, as described above. In addition (see below), sessions ARE being written to /tmp (chmod 777). I have since changed it to a more local directory, but I don't know that I needed to. (2) It looks like there are several sessions being started near-simultaneously for each request, however the one that gets written to the URIs as described above are carrying over and being used properly. Why isn't PHP recognizing that the session has already auto_started? What's happening when PHP launches multiple sessions for a single request? I appreciate any insight. Thanks! James |