2013-05-31 54 views
4

當我安裝Laravel 4,I收到此錯誤:Laravel 4 - 反序列化():錯誤的偏移量的32 0字節

ErrorException 
unserialize(): Error at offset 0 of 32 bytes 

C:\xampp\htdocs\blog\laravel\bootstrap\compiled.php 
return unserialize($this->stripPadding($this->mcryptDecrypt($value, $iv))); 

如果我修改返回這樣的:

return unserialize(base64_decode($this->stripPadding($this->mcryptDecrypt($value, $iv)))); 

然後錯誤消失。但是當然,我每次運行作曲家更新時,這個改變都會被取消。

可能是這個問題的原因是什麼?

我很感激任何幫助。

更新:這隻發生在我使用Auth :: check()時。

更新2:現在它只適用於刪除base64_decode()。就好像xampp安裝已經變得自我意識一樣。耶穌!

+0

我會說這是,但確保mcrypt模塊已加載。檢查你的'phpinfo()'並從命令行檢查'php -m'。 –

+0

如果我運行'php --ri mcrypt',一切都很好。我在Laravel 4的最後幾天遇到的所有問題似乎與mcrypt有關,我想是時候乾淨安裝xampp了。 – user2094178

+0

劉易斯先生,如果它只發生在Auth :: check(),那麼我想所有都歸結爲'return'login _'。md5(get_class($ this));'在** Illuminate/Auth/Guard.php **在544行。如果是這樣的話,這絕對是一個mcrypt問題? – user2094178

回答

12

參考這個問題:laravel/framework#1526

在加密機制的變化是原因。我的解決方案是清空緩存在storage文件夾中的sessionsviews,然後運行php artisan key:generate並重新啓動服務器。我不確定該流程的哪一部分解決了問題,但我從未看到過。

+0

好吧,我做了一個全新的安裝來解決它,我無法測試你的建議,但很有道理,你說什麼。感謝您在github上指出這個問題,當第一次出現時,沒有人能夠幫助我,而我正要解散當前的xampp安裝。 – user2094178

+1

我的機器出現藍屏故障後出現此問題。不知道確切發生了什麼,但按照您的指示讓我的應用程序再次運行。謝謝! +1 – Inigo

+0

最後「php artisan key:generate」命令修復了我的問題。謝謝。 :) – interstellarDust

0

你可以發佈你正在做什麼導致這個錯誤?你不應該修改核心 - 因爲如你所說,更新會覆蓋它。

+0

我忘了提及,只有當我使用Auth :: check()時纔會發生這種情況。 – user2094178

0

命令> php artisan cache:明確解決了我的問題。 我沒必要重新啓動服務器

+0

沒有爲我工作,但清除文件夾@Dwight建議爲我工作。 – clod986

相關問題