Maybe try PHP ext/session configuration (i.e., session.gc_probability,
session.gc_divisor, session.gc_maxlifetime)? You can set these options
with Zend_Session::setOptions(); please see the following documentation
for more information:
http://framework.zend.com/manual/en/zend.session.global_session_management.html#zend.session.global_session_management.configuration_options
(Sorry for the long URL)
Maybe you are on a FAT filesystem?
Best regards,
Darby
WooKasZ wrote:
So what should I do to make it work ? I have to clean this session directory.
My GB function:
function garbageCollection( $dir, $lifetime ) {
if ( $resDirectory = opendir( $dir ) ) {
while ( ( $strFile = readdir( $resDirectory ) ) !== false ) {
if ( is_file( $dir . $strFile ) ) {
if ( time() > filemtime( $dir . $strFile ) + $lifetime
) {
unlink( $dir . $strFile );
}
}
}
closedir( $resDirectory );
}
Matthew Weier O'Phinney-3 wrote:
-- Steven Brown <[EMAIL PROTECTED]> wrote
(on Thursday, 06 March 2008, 07:53 AM +1000):
Matthew is it possible Zend_Session needs an option like Zend_Cache to
store session files in layered directories so there are not too many
files in a single directory at once?
Zend_Session does not do session storage, and instead leaves it to PHP's
session mechanisms. All it does is provide an interface to the $_SESSION
global as well as to the various session_*() configuration functions.
The error below is due to the user's own session handler, which
Zend_Session has no knowledge of -- as is is, even if they used
session_start() without Zend_Session, they'd get a PHP warning.
-----Original Message-----
From: Matthew Weier O'Phinney [mailto:[EMAIL PROTECTED]
Sent: Wednesday, 5 March 2008 11:49 PM
To: [email protected]
Subject: Re: [fw-general] Critical Error with Zend_Session
-- WooKasZ <[EMAIL PROTECTED]> wrote
(on Wednesday, 05 March 2008, 05:35 AM -0800):
Hello ! I have a problem with Zend_Session class.
Sometimes when I am refreshing page or clicking on a link this fatal
error
occurs:
Code:
Fatal error: Uncaught exception 'Zend_Session_Exception'
with message 'Zend_Session::start() - session_start()
[ function.session-start function.session-start ]:
ps_files_cleanup_dir:
opendir(_sessions/) failed: Result too large (34)'
in H:\www\wz\Zend\Session.php:379 Stack trace:
#0 H:\www\wz\Zend\Session\Namespace.php(116): Zend_Session::start(true)
#1 H:\www\wz\init\session.php(16):
Zend_Session_Namespace->__construct()
#2 H:\www\wz\init\init.php(10): require_once('H:\www\wz\init\...')
#3 H:\www\wz\index.php(21): require_once('H:\www\wz\init\...')
#4 {main} thrown in H:\www\wz\Zend\Session.php on line 379
Here is the code in my app:
require_once('Zend/Session.php');
garbageCollection( $config['session']['savepath'],
$config['session']['lifetime'] );
ini_set( 'session.cache_expire',
$config['session']['cache_exp']);
ini_set( 'session.gc_maxlifetime',
$config['session']['lifetime'] );
session_save_path( $config['session']['savepath'] );
$defSessNamespace = new Zend_Session_Namespace( );
garbageCollector is cleaning folder with sessions.
I use it (and init_set) couse I didin't found it in docs.
Based on the message exception from the exception thrown, it looks like
your GC routine is having trouble getting a list of sessions to remove
-- that perhaps there are too many for the OS to handle at once.
--
Matthew Weier O'Phinney
PHP Developer | [EMAIL PROTECTED]
Zend - The PHP Company | http://www.zend.com/
--
Matthew Weier O'Phinney
PHP Developer | [EMAIL PROTECTED]
Zend - The PHP Company | http://www.zend.com/