如何在PHP中处理此"会话无法写入文件"错误?

ale*_*lex 0 php error-handling session kohana kohana-3

我正在使用Kohana 3框架,并使用本机会话驱动程序.

出于某种原因,有时会话无法写入其文件.

Warning: session_start() [function.session-start]: open(/tmp/sess_*****, O_RDWR) failed: Permission denied (13) in /home/site/public_html/system/classes/kohana/session/native.php  on line 27
Run Code Online (Sandbox Code Playgroud)

我很确定Kohana有自己的内置错误处理程序,但它不会被此错误触发(即它显示为正常的PHP错误,而不是Kohana错误).

PHP错误http://alexanderdickson.com/hosted/stackoverflow.com/php-session-error.png

任何曾经使用过Kohana的人都会注意到这似乎绕过了Kohana的错误处理(也许是设置set_error_handler()).

反正有没有从原始会话(即基于文件)驱动程序切换出现此错误?

我是否应该在Kohana的核心代码中提供良好的实践启动和前置@错误抑制器session_start()?我应该放松一下error_reporting()吗?

谢谢

sha*_*and 5

您可以在bootstrap.php中调用ini_set('session.save_path', APPPATH.'sessions')(替换APPPATH.'sessions'为所需的目录)以强制写入会话application/sessions.这将提高使用本机会话的安全性,并解决您的问题.