laravel - 使用 Heroku 部署 Laravel 站点时出现错误 500
问题描述
我正在尝试使用 Heroku 部署我的网站。我使用 Laravel 6 创建了站点。部署进行得很顺利,但是当我尝试打开我的站点时,出现错误 500。我找不到任何问题,请您指导我找到根本原因并最终解决它吗?
2020-03-20T21:36:45.046621+00:00 heroku[web.1]: State changed from down to starting
2020-03-20T21:36:45.042846+00:00 heroku[web.1]: Unidling
2020-03-20T21:36:49.111583+00:00 heroku[web.1]: Starting process with command `vendor/bin/heroku-php-apache2 public/`
2020-03-20T21:36:52.831320+00:00 app[web.1]: DOCUMENT_ROOT changed to 'public/'
2020-03-20T21:36:52.942370+00:00 app[web.1]: Detected 536870912 Bytes of RAM
2020-03-20T21:36:52.979231+00:00 app[web.1]: PHP memory_limit is 128M Bytes
2020-03-20T21:36:52.992073+00:00 app[web.1]: Starting php-fpm with 4 workers...
2020-03-20T21:36:53.372095+00:00 heroku[web.1]: State changed from starting to up
2020-03-20T21:36:53.134132+00:00 app[web.1]: Starting httpd...
2020-03-20T21:36:54.437872+00:00 heroku[router]: at=info method=GET path="/" host=born.herokuapp.com request_id=8d35e95d-3ac1-41bb-bd6f-cf601c89c0f8 fwd="86.68.15.24" dyno=web.1 connect=1ms service=345ms status=500 bytes=1786 protocol=https
2020-03-20T21:36:54.441186+00:00 app[web.1]: 10.99.209.116 - - [20/Mar/2020:21:36:54 +0000] "GET / HTTP/1.1" 500 1562 "https://dashboard.heroku.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0
我发现了这个日志
2020-03-21T11:27:01.722880+00:00 app[web.1]: 10.181.29.40 - - [21/Mar/2020:11:27:01 +0000] "GET / HTTP/1.1" 500 1562 "https://dashboard.heroku.com/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0
2020-03-21T11:27:01.723771+00:00 app[web.1]: [2020-03-21 11:27:01] production.ERROR: The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths. {"exception":"[object] (RuntimeException(code: 0): The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths. at /app/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php:43)
2020-03-21T11:27:01.723804+00:00 app[web.1]: [stacktrace]
2020-03-21T11:27:01.724139+00:00 app[web.1]: #0 /app/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php(28): Illuminate\\Encryption\\Encrypter->__construct()
2020-03-21T11:27:01.724507+00:00 app[web.1]: #1 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}()
2020-03-21T11:27:01.724800+00:00 app[web.1]: #2 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(681): Illuminate\\Container\\Container->build()
2020-03-21T11:27:01.725096+00:00 app[web.1]: #3 /app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(785): Illuminate\\Container\\Container->resolve()
2020-03-21T11:27:01.725405+00:00 app[web.1]: #4 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(629): Illuminate\\Foundation\\Application->resolve()
2020-03-21T11:27:01.725683+00:00 app[web.1]: #5 /app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(770): Illuminate\\Container\\Container->make()
2020-03-21T11:27:01.725962+00:00 app[web.1]: #6 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(945): Illuminate\\Foundation\\Application->make()
2020-03-21T11:27:01.726271+00:00 app[web.1]: #7 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(873): Illuminate\\Container\\Container->resolveClass()
2020-03-21T11:27:01.726593+00:00 app[web.1]: #8 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(834): Illuminate\\Container\\Container->resolveDependencies()
2020-03-21T11:27:01.726881+00:00 app[web.1]: #9 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(681): Illuminate\\Container\\Container->build()
2020-03-21T11:27:01.727212+00:00 app[web.1]: #10 /app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(785): Illuminate\\Container\\Container->resolve()
2020-03-21T11:27:01.727521+00:00 app[web.1]: #11 /app/vendor/laravel/framework/src/Illuminate/Container/Container.php(629): Illuminate\\Foundation\\Application->resolve()
2020-03-21T11:27:01.727814+00:00 app[web.1]: #12 /app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(770): Illuminate\\Container\\Container->make()
2020-03-21T11:27:01.728122+00:00 app[web.1]: #13 /app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(209): Illuminate\\Foundation\\Application->make()
2020-03-21T11:27:01.728457+00:00 app[web.1]: #14 /app/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(183): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware()
2020-03-21T11:27:01.728665+00:00 app[web.1]: #15 /app/public/index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate()
2020-03-21T11:27:01.728711+00:00 app[web.1]: #16 {main}
解决方案
这是相关的错误消息:
唯一受支持的密码是具有正确密钥长度的 AES-128-CBC 和 AES-256-CBC。在 /app/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php:43
看起来你的APP_KEY
设置不正确。
在开发中,这可能会通过您的.env
文件设置,该文件不应包含在您的存储库中。该文件只是开发中设置环境变量的一种便捷方式;Heroku通过 config vars 原生支持环境变量。
要么生成一个新文件,要么APP_KEY
从你的文件中复制一个.env
文件,然后通过运行在 Heroku 上设置它
heroku config:set APP_KEY=<your_key>
或通过门户网站。
推荐阅读
- python-3.x - 使用 python,打开 cmd 窗口,并将作为参数提供的目录作为当前目录
- laravel - 如何避免由于 laravel 中的关系中断而导致的错误?
- c++ - 如何进行线程安全的 shared_ptr 修改和访问?
- ios - CIImage 不会加载到表格视图单元格中
- javascript - 用户脚本无法识别 Windows 键码事件
- python - 通过 control-m 触发的 shell 脚本
- matplotlib - 获得在一个点上显示三个数量的图?
- c# - 使我的表单处于活动状态/显示在所有其他正在运行的应用程序的第一个位置
- flutter - 如何在 Flutter 中设置 layoutToLeft 或 toRight
- java - 是否有适用于每个类似日期时间模式的主日期时间模式