Symfony2中parameters.yml和config.yml之间的区别

时间:2014-04-18 08:29:00

标签: symfony

我不明白这两种在Symfony2中设置全局常量的方法之间的区别。是否只能在config.yml(+ configuration.php)中设置默认值和类型?

3 个答案:

答案 0 :(得分:3)

parameters.yml 文件是所有与环境相关的常量的位置。如果您使用composer来部署您的应用程序,它会询问您的值。您还可以定义 paramteters.yml.dist 以提供一些默认值。如果您使用 parameters.yml ,则可以在一个位置设置应用程序(例如在生产服务器上)所需的所有参数。

答案 1 :(得分:2)

不,不,不,不。

parameters.yml用于密码和服务器特定参数,例如数据库连接信息。

config.yml(和所有其他配置文件)和parameters.yml之间的主要区别是parameters.yml永远不应该检入源控制系统。这样做会将您的密码和其他私人信息暴露给有权访问您的源代码的任何人。

答案 2 :(得分:0)

这是分离文件中某些独立数据的方法。您可以在config.yml中输入位于另一个config-files(parameters.yml,routing.yml,security.yml等)中的所有数据。但即使您是该项目的单一开发人员,也难以维护整个项目。

所有配置数据都应根据其域进行拆分。电子邮件设置 - 在电子邮件设置文件中,集成支付系统的设置 - 在支付设置文件中,服务 - 在services-config文件中。

如果配置文件中包含某些个人信息,您可以将此文件添加到.gitignore,并为your_config.yml.dist定义一些默认值。然后你可以设置你的作曲家运行一些脚本来填充your_config.yml文件,就像在symfony标准版中制作一样。