ID: 26005
User updated by: parsnip11 at hotmail dot com
Reported By: parsnip11 at hotmail dot com
-Status: Feedback
+Status: Open
Bug Type: Session related
Operating System: windows 2000 iis 5
PHP Version: 4.3.3
New Comment:

I have updated to the latest version of php and have also added and
session_write_close() before all of my "exit" statements as some people
have mentioned this helped.

No go... Just checked the logs this morning and this error has popped
up again


Previous Comments:
------------------------------------------------------------------------

[2003-10-28 18:13:28] [email]sniperphp.net[/email]

Please try using this CVS snapshot:

[url]http://snaps.php.net/php4-STABLE-latest.tar.gz[/url]

For Windows:

[url]http://snaps.php.net/win32/php4-win32-STABLE-latest.zip[/url]



------------------------------------------------------------------------

[2003-10-27 10:52:27] parsnip11 at hotmail dot com

Description:
------------
I am recently upgraded to php 4.3.3 from 4.2.9 and am using the
php4isapi.dll on iis. My application has been working w/o any problems
for quite awhile and after the upgrade, without rhyme or reason I am
getting the following error every few days:

PHP Warning: Unknown(): A session is active. You cannot change the
session module's ini settings at this time. in Unknown on line 0

I have no ini_set statement in my application and have even set my
php.ini to read only in the event that it was somehow being modified.
My application is EXTREMELY simple... it's basically just consists of a
few html forms submitting to a sql db. Authentication happens via IIS
and I'm using $AUTH_USER to get the user id.

Since this error is extremely intermittent and only happens 2 or 3
times a week, I cant seem to figure out what line seems or even what
function is causing this error. I know that bugs cannot be solved w/o a
code example that generates the error but I cl I know is that the
version of PHP is all that's changed so I'm inclined to think it's a
bug.

Php.ini is set up as follows:

session.save_handler = files
session.save_path = C:\PHP\sessiondata ; argument passed to
save_handler
session.use_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.serialize_handler = php
session.gc_probability = 1
session.gc_maxlifetime = 50400
session.referer_check =
session.entropy_length =
session.entropy_file =
;session.entropy_length = 16
;session.entropy_file = /dev/urandom
session.cache_limiter =
;session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 1


Reproduce code:
---------------
As stated above, I'm really not sure WHAT is causing this error. No
filename is mentioned in the error. My login.php included in every page
is pretty simple:

session_start();

if(!isset($logged_in) || $logged_in != "!authenticated!") {
header("Location: http://myurl.com");
exit;
} else {
$user_id= str_replace("windows_domain\\\\", "",
strtolower($AUTH_USER));
}


Actual result:
--------------
Generic 500 error page in IE for the user... On one occasion when this
happened I had to restart IIS before PHP would work again....


------------------------------------------------------------------------


--
Edit this bug report at [url]http://bugs.php.net/?id=26005&edit=1[/url]