1

我实际上遇到了 Symfony 和我的数据库密码的问题。密码包含几个特殊字符,例如:65RfK_&$+4

阅读文档,他们说我们实际上需要转义那些特殊字符,例如:

php symfony generate:app --csrf-secret=Unique\$ecret backend

但是,我尝试将其应用于我的密码,但它仍然无法正常工作:

65RfK_\&\$\+4

缓存的文件会生成一个密码,例如:

65RfK_\\&\\$\\+4

由于我无法更改密码,因此我需要找到一种方法使其正常工作。有任何想法吗?

谢谢

编辑:
似乎问题来自+符号。但是,试图逃避它是行不通的:

65RfK_&$\+4
\u0024\u0026\u002b2

Poblem解决
了我终于解决了我的问题。我联系了管理员并要求输入没有+标志的新密码。现在效果很好。但是,我仍然对如何从 YAML 文件中转义它感到好奇。如果有人有答案,我会很高兴看到它:)

4

2 回答 2

1

你的数据库密码在哪里?在app/config/parameters.yml,对吧?您是否尝试在密码前后添加单引号或双引号?

例如:

# This file is auto-generated during the composer install
parameters:
    database_driver: pdo_mysql
    [...]
    database_password: "65RfK_&$+4"
于 2013-10-15T16:46:41.953 回答
0

如果用户名、密码、主机名或数据库名包含在 URI 中被视为特殊的任何字符(例如+, @, $, #, /, :, *, !),您必须对它们进行编码。您可以使用urlencode函数对它们进行编码。

之后,删除resolve:前缀config/packages/doctrine.yaml以避免错误:url: '%env(resolve:DATABASE_URL)%'

于 2022-01-13T15:10:23.197 回答