diff options
author | vipsoft <vipsoft@59fd770c-687e-43c8-a1e3-f5a4ff64c105> | 2009-09-24 08:12:55 +0400 |
---|---|---|
committer | vipsoft <vipsoft@59fd770c-687e-43c8-a1e3-f5a4ff64c105> | 2009-09-24 08:12:55 +0400 |
commit | 8263ba97c16d3191d0aeb66df8459decd5537afa (patch) | |
tree | ff7f003edfcd4f137f34f0be1385c39bc58c7432 /index.php | |
parent | 98fa72a6619109c536965b4afaac675fa47ed28c (diff) |
refs #642 and #796 - is session.save_handler is 'files' and session.save_path is not writeable, create (and use) local tmp/sessions folder
Diffstat (limited to 'index.php')
-rw-r--r-- | index.php | 33 |
1 files changed, 23 insertions, 10 deletions
@@ -14,22 +14,12 @@ if(file_exists('bootstrap.php')) require_once 'bootstrap.php'; } -if(!defined('PIWIK_SESSION_NAME')) -{ - define('PIWIK_SESSION_NAME', 'PIWIK_SESSID'); -} -@ini_set('session.name', PIWIK_SESSION_NAME); error_reporting(E_ALL|E_NOTICE); if(!defined('PIWIK_DISPLAY_ERRORS') || PIWIK_DISPLAY_ERRORS) { @ini_set('display_errors', 1); } @ini_set('magic_quotes_runtime', 0); -if(ini_get('session.save_handler') == 'user') -{ - @ini_set('session.save_handler', 'files'); - @ini_set('session.save_path', ''); -} define('PIWIK_DOCUMENT_ROOT', dirname(__FILE__)=='/'?'':dirname(__FILE__)); if(!defined('PIWIK_USER_PATH')) @@ -50,6 +40,29 @@ if(!defined('PIWIK_INCLUDE_SEARCH_PATH')) @set_include_path(PIWIK_INCLUDE_SEARCH_PATH); } +if(!defined('PIWIK_SESSION_NAME')) +{ + define('PIWIK_SESSION_NAME', 'PIWIK_SESSID'); +} +@ini_set('session.name', PIWIK_SESSION_NAME); +if(ini_get('session.save_handler') == 'user') +{ + @ini_set('session.save_handler', 'files'); + @ini_set('session.save_path', ''); +} +if(ini_get('session.save_handler') == 'files') +{ + if(!is_writable(ini_get('session.save_path'))) + { + $sessionPath = PIWIK_USER_PATH . '/tmp/sessions'; + @ini_set('session.save_path', $sessionPath); + if(!is_dir($sessionPath)) + { + @mkdir($sessionPath, 0755, true); + } + } +} + require_once PIWIK_INCLUDE_PATH . '/core/testMinimumPhpVersion.php'; // NOTE: the code above this comment must be PHP4 compatible |