I'm stumped... My app, which worked perfectly well on one server, isn't working on my new server. Session settings for PHP are exactly the same. Basically, sessions are being persisted via automatic URL modification to append the SID, and since I'm using frames, different frames are getting different SIDs!
php.ini has 'enable_trans_sid' set on both servers, but other servers have always used session cookies with no problem. This isn't a browser problem, and I've tried using MySQL for session storage instead of the FS in case the hosting provider had mucked up permissions on the tmp directory that PHP was using for sessions (I needed to do this anyway, for security).
Does anyone have any idea what might be causing PHP to append the SID and not use session cookies?
Here's phpinfo output:
Session Support enabled
Registered save handlers files user
Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /tmp /tmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid On On
PHP version is 4.3.3.
Question is, can I do anything about it in code, or am I going to need to contact my hosting provider?
Cheers,
Mick