【问题标题】:Updating Symfony 3.4 to Symfony 4.4 returns You have requested a non-existent parameter "secret". Did you mean this: "kernel.secret"?将 Symfony 3.4 更新到 Symfony 4.4 会返回您请求了一个不存在的参数“secret”。你是说这个:“kernel.secret”吗?
【发布时间】:2021-12-23 19:50:24
【问题描述】:

我正在从 Symfony 3.4 升级到 Symfony 4.4,参数现在使用 .env 但终端命令返回错误消息 在 ParameterBag.php 第 95 行:

    You have requested a non-existent parameter "secret". Did you mean this: "kernel.secret"? 

文件 config/packages/framework.yaml 看起来像这样

 framework:
     secret: '%env(APP_SECRET)%'

我运行 'composer dump-env dev' 它返回秘密。

任何想法为什么它没有被发现?我需要什么来解决这个问题?谢谢

【问题讨论】:

  • 这不是参数而是配置,参数(通常)在services.yaml中配置。您必须使用%secret% 或尝试在其他地方通过ParameterBagInterface 检索secret
  • 您可以通过运行bin/console debug:container --parameter kernel.secret 来确认@msg 所说的内容。您的 3.4 应用程序必须已经定义了它自己的秘密参数。如果您不想更改任何代码,则可以随时添加自己的秘密参数并将其设置为 kernel.secret 的值。
  • @Cerad 同样的错误

标签: php symfony environment-variables


【解决方案1】:

好像我在 security.yaml 中定义了一个 '%secret',取自 3.4 版,所以注释掉了

    #remember_me:
    #secret:   '%secret%'

【讨论】:

    猜你喜欢
    • 2022-08-03
    • 2014-03-17
    • 2014-11-13
    • 1970-01-01
    • 2016-05-04
    • 1970-01-01
    • 2016-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多