Laravel加密错误

时间:2017-08-07 16:45:33

标签: laravel

我将Laravel应用程序移动到另一台服务器上,然后执行了此操作:

  1. 将所有内容复制到新服务器。
  2. 更新了database.php文件。
  3. 将所有出现的产量更改为_yield。
  4. 但现在我遇到了“服务器错误:500(内部服务器错误)"。”

    经过长时间的周末与Laravel的战斗后,我发现在哪里打开日志并显示错误。这就是它所显示的:

    Unhandled Exception
    
    Message:
    
    mcrypt_encrypt(): Key of size 22 not supported by this algorithm. Only keys of sizes 16, 24 or 32 supported Location:
    
    /home3/l7o1c5g8/public_html/laravel/crypter.php on line 40 Stack Trace:
    
    #0 /home3/l7o1c5g8/public_html/laravel/laravel.php(40): Laravel\Error::native(2, 'mcrypt_encrypt(...', '/home3/l7o1c5g8...', 40) 
    #1 [internal function]: Laravel{closure}(2, 'mcrypt_encrypt(...', '/home3/l7o1c5g8...', 40, Array)
    #2 /home3/l7o1c5g8/public_html/laravel/crypter.php(40): mcrypt_encrypt('rijndael-256', 'YourSecretKeyGo...', 'a:3:{s:2:"id";s...', 'cbc', '5E\x9B ]\xBE\x97Yb\x98J\xD7|\xCA\x90...')
    #3 /home3/l7o1c5g8/public_html/laravel/session/drivers/cookie.php(40): Laravel\Crypter::encrypt('a:3:{s:2:"id";s...')
    #4 /home3/l7o1c5g8/public_html/laravel/session/payload.php(293): Laravel\Session\Drivers\Cookie->save(Array, Array, false)
    #5 [internal function]: Laravel\Session\Payload->save()
    #6 /home3/l7o1c5g8/public_html/laravel/session.php(150): call_user_func_array(Array, Array)
    #7 /home3/l7o1c5g8/public_html/laravel/laravel.php(193): Laravel\Session::__callStatic('save', Array)
    #8 /home3/l7o1c5g8/public_html/laravel/laravel.php(193): Laravel\Session::save()
    #9 /home3/l7o1c5g8/public_html/public/index.php(34): require('/home3/l7o1c5g8...')
    #10 {main}
    

    有任何线索吗?我是否需要重新生成加密代码?怎么样?

    不知道现在该做什么。

    在共享主机中使用Laravel 3.

1 个答案:

答案 0 :(得分:0)

已解决:我更改了/public_html/application/config/application.php上的默认密钥

来自:' key' => ' YourSecretKeyGoesHere'!,

to:' key' => ' 32个字符!',

您必须使用16,24或32个字符的单词替换默认密钥。

感谢您的帮助。