I'm having trouble with a PHP website which requires users to be logged
in to access all content other than the home page and a couple of static
pages (about us, contact us etc.). Several users have said they are
being logged out every few minutes whilst using the site - they can
login but will be shown the login form again after a few minutes. I
can't confirm this myself as the site seems to work fine for me - even
using the same browser as they are and under their accounts - but I'm
wondering if this could be a problem with the session settings?
The current settings I have are:
session.auto_start Off
session.bug_compat_42 On
session.bug_compat_warn On
session.cache_expire 180
session.cache_limiter nocache
session.cookie_domain no value
session.cookie_httponly Off
session.cookie_lifetime 0
session.cookie_path /
session.cookie_secure Off
session.entropy_file no value
session.entropy_length 0
session.gc_divisor 100
session.gc_maxlifetime 3600
session.gc_probability 1
session.hash_bits_per_character 4
session.hash_function 0
session.name PHPSESSID
session.referer_check no value
session.save_handler files
session.save_path /shared/sessions
session.serialize_handler php
session.use_cookies On
session.use_only_cookies Off
session.use_trans_sid 0
The only options I have changed from the defaults are gc_maxlifetime,
gc_probability and save_path. There are several sites on the same
server, some are https, others just plain http. They all use the same
session options. session_start() is called once on every page.
The PHP version we're running is: PHP 5.2.6-1+lenny13 with Suhosin-Patch
0.9.6.2 (cli) (built: Jul 1 2011 16:01:01). I'm aware it's an old
version before anyone tells me to upgrade (it's the latest stable
version in Debian Lenny). :)
Potential problems I have already ruled out:
1. I don't think it's a browser problem as the users have a variety of
browsers and versions (we log the user agent for each login, they're
mostly IE7/8 on XP/Vista/7 with a few Chrome users), and I can't
reproduce the problem using the same browsers on my machine.
2. The server time is correct.
3. The sessions aren't stored in a directory which is being regularly
cleared out, such as /var/lib/php5 or /tmp.
4. The web server has permission to write to the save_path directory,
and I can see session files being created.
5. No output buffering functions are being used.
Can anyone suggest things which I could try? I cannot work out why this
problem is happening for some users but not me.
Thanks in advance.
Paul
--
Paul Waring
http://www.phpdeveloper.org.uk
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php