संस्करण 4 से 5.5 तक php अपडेट करने के बाद, कोहना में 3.3.3 ने काम करना सत्र बंद कर दिया .. जब आप कॉल करते हैं: सत्र :: उदाहरण ("डेटाबेस") एक त्रुटि है: "सत्र डेटा पढ़ने में त्रुटि।"
ऐसा क्यों है?
Session_Exception [ 1 ]: Error reading session data.
SYSPATH/classes/Kohana/Session.php [ 324 ]
319 }
320 }
321 catch (Exception $e)
322 {
323 // Error reading the session, usually a corrupt session.
324 throw new Session_Exception("Error reading session data.", NULL, Session_Exception::SESSION_CORRUPT);
325 }
326
327 if (is_array($data))
328 {
329 // Load the data locally
SYSPATH/classes/Kohana/Session.php [ 125 ] » Kohana_Session->read(arguments)
MODPATH/database/classes/Kohana/Session/Database.php [ 74 ] » Kohana_Session->__construct(arguments)
SYSPATH/classes/Kohana/Session.php [ 54 ] » Kohana_Session_Database->__construct(arguments)
APPPATH/classes/Controller/Base.php [ 17 ] » Kohana_Session::instance(arguments)
APPPATH/classes/Controller/Index.php [ 9 ] » Controller_Base->before()
SYSPATH/classes/Kohana/Controller.php [ 69 ] » Controller_Index->before()
{PHP internal call} » Kohana_Controller->execute()
SYSPATH/classes/Kohana/Request/Client/Internal.php [ 97 ] » ReflectionMethod->invoke(arguments)
SYSPATH/classes/Kohana/Request/Client.php [ 114 ] » Kohana_Request_Client_Internal->execute_request(arguments)
SYSPATH/classes/Kohana/Request.php [ 997 ] » Kohana_Request_Client->execute(arguments)
DOCROOT/index.php [ 118 ] » Kohana_Request->execute()
उत्तर:
उत्तर № 1 के लिए 1सबसे पहले। चेक सेशन php ini पर पथ सेव करें, और सेव फाइल्स के लिए कैटलॉग अनुमति। मेरे मामले में यह / tmp था।
गोटो / VAR / लॉग और अपाचे त्रुटियों को लॉग इन करें।
और फिर, SYSPATH / Application / bootstrap.php खोलें खोज
Kohana::init(array(
"base_url" => "/",
"index_file" => FALSE,
"errors" => TRUE
));
में बदलो
Kohana::init(array( "base_url" => "/", "index_file" => FALSE,
"errors" => FALSE ));
और आप देखेंगे कि त्रुटियाँ आपके php दुभाषिया या अपाचे का रूप हैं
अगर यह "t" आपकी मदद करता है।
SYSPATH / कक्षाएं / कोहना / सत्र खोजें। और इसे बदलें
throw new Session_Exception("Error reading session data.", NULL, Session_Exception::SESSION_CORRUPT);
और इसे प्रतिस्थापित करें
throw new Session_Exception("Error reading session data.". " [SID:".$id."(".$this->id()."), name:".$this->_name."][Details: " . $e . "]n", NULL, Session_Exception::SESSION_CORRUPT);
और आपको अपनी त्रुटि का पता चल जाएगा। मेरे मामले में यह डेटाबेस में गलत था।
जवाब के लिए 0 № 2
php 5.5 के साथ mysql के बजाय मॉड्यूल मेलानचोली या PDO का उपयोग करने की आवश्यकता है, अच्छी तरह से, या बस इन त्रुटियों के आउटपुट को index.php पर बंद करें
http://webnotes.by/docs/php/kohana-3-2-and-php-5-5
जवाब के लिए 0 № 3
Kohana session.php फ़ाइल में कैच ब्लॉक के अंदर एक var_dump ($ e) जोड़ें जहां अपवाद को फेंका जा रहा है (जैसे आपके द्वारा चिपकाए गए कोड में) और आपको वास्तविक समस्या मिलेगी;