【问题标题】:Whoops, looks like something went wrong. on server哎呀,看起来像出事了。在服务器上
【发布时间】:2025-11-28 12:15:01
【问题描述】:

我在服务器上上传了所有 laravel 项目,它在本地工作正常,但在服务器上出现错误,甚至数据库配置和密钥都是在 env 中配置的。文件。即使我也将 .env.example 文件重命名为 .env 但得到了同样的错误。

错误是

“哎呀,好像出了点问题。”

我的错误日志在这里:

[2017-11-06 15:19:07] local.ERROR: 异常“RuntimeException”与 message '唯一支持的密码是 AES-128-CBC 和 AES-256-CBC 具有正确的密钥长度。在 /home/rndspot5/public_html/dev/lea/vendor/laravel/framework/‌​src/Illuminate/Encry‌​ption/Encrypter.php:‌​43

【问题讨论】:

  • 你肯定必须解决一些问题。
  • 我们需要更多信息来提供帮助,这太模糊了。打开您的调试(APP_DEBUG=true 在您的 .env 文件中)并向我们提供信息
  • 检查laravel.log文件以了解有关错误的更多信息。
  • 上传到您的服务器时可能会出现许多问题。你跑过composer install吗?
  • 我的错误日志在这里 [2017-11-06 15:19:07] local.ERROR: exception 'RuntimeException' with message 'The only supported ciphers are AES-128-CBC and AES-256 -具有正确密钥长度的CBC。在 /home/rndspot5/public_html/dev/lea/vendor/laravel/framework/src/Illuminate/Encryption/Encrypter.php:43

标签: laravel deployment server


【解决方案1】:

我通过在 .env 和 Config/App.php 中添加 web 应用程序 url 解决了这个问题,现在它可以工作了 :) 感谢大家分享如此有价值的知识,这将有助于我,可能会在以后。

【讨论】:

    【解决方案2】:

    如果您使用共享主机,则可以使用这些步骤

    1. 打开您的 .env 文件,将APP_KEY 复制到其他地方作为备份
    2. 从控制台运行php artisan key:generate
    3. 复制新的APP_KEY 并将其上传到您(共享)服务器上的 .env 文件
    4. 将旧密钥移回开发

    【讨论】:

    • 我可以使用我在本地主机上生成的密钥吗?
    • 我建议不要在开发和生产中使用相同的密钥,但您确实可以这样做。但是为什么不生成第二个密钥呢?
    • 因为我没有 ssh 和 putty 的经验。但我正在尝试,再次收到错误“连接超时”并再次出现
    • 你现在可以上传文件吧?所以你可以重新上传 .env 文件。
    【解决方案3】:

    根据您的错误判断,您需要运行 php artisan key:generate 这将更新您的密钥,进而纠正您的错误。

    如果您有主机权限,则需要通过 SSH 连接到您的 public_html 文件夹。或者,您可以要求您的主机提供商:

    1. 授予您 SSH 访问权限
    2. 为您执行此操作。

    您可以在生成新密钥后运行:php artisan config:clear

    【讨论】:

    • 您需要通过 ssh 进入,您的主机是否允许您执行此操作?
    • 是的,我在这里,这对我来说真的是新事物,这是要填写的表格,这里有三件事,新密钥,上传密钥和管理当前密钥。你能帮我更多吗?
    • 您是否通过 SSH(终端/腻子)登录?
    • 不知道,如何与 ssh 连接,但尝试,再次收到错误“连接超时”,而且很糟糕
    • 我建议在这种情况下与您的主机提供商交谈,看看他们是否会授予您 ssh 访问权限,甚至查看他们是否支持 Laravel(因为您需要命令行访问权限)