session.save_path不起作用

时间:2014-07-17 08:04:02

标签: php apache session

ini_set('session.save_path', __ROOT__ . '/sessions/');
echo 'needed: '.__ROOT__ . '/sessions/<br>curent: '.session_();
session_start();

此代码显示:

needed: /var/www/admin/data/www/tdf/
curent: /var/www/admin/data/mod-tmp

ini_set没有改变会话的路径。 ISP Manager 5 lite已安装。 这条路径由ISPM&#34; / var / www / admin / data / mod-tmp&#34;给出。 不知何故ISP管理员阻止了我的更改。

我尝试使用.htaccess

php_value session.save_path = '/bla'

但它给了我内部服务器错误。在其他服务器上,此代码可以工作,并为&#34;所需的&#34;提供相同的路径。和&#34; curent&#34;

整个代码:

<?
error_reporting(E_ALL); 
ini_set('display_errors', '1'); 
ini_set('session.gc_maxlifetime', 7776000); 
ini_set('session.cookie_lifetime', 7776000);
$path = '/var/www/admin/data/www/tdf/'; 
ini_set('session.save_path', $path); 
session_save_path($path); 
echo 'needed: '.$path. '<br>curent: '.session_save_path(); 
session_start(); 
$_SESSION['test'] = 'test';
phpinfo();
?>

的.htaccess

php_value session.save_path /var/www/admin/data/www/

然后,如果我检查phpinfo它会显示我&#34; session.gc_maxlifetime&#34;已被更改,但&#34; session.save_path&#34;号

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。网域 - &gt; config - &gt;将默认值更改为:

php_admin_value session.save_path "/var/www/admin/data/www/"

它在ISP Manager上分叉。