在 platform.sh 为 Symfony 配置 smtp

Configure smtp for Symfony at platform.sh

Platform.sh 不允许通过 SSH 编辑 parameters.yml 或任何其他文件。我如何配置 SMTP 以便使用 Symfony 应用程序的 SwiftMailer 发送邮件? This 文档说

In Symfony, if you use the default SwiftMailer service, we recommend the following settings in your app/config/parameters.yaml:

parameters:
     mailer_transport: sendmail
     mailer_host: null
     mailer_user: null
     mailer_password: null

但我认为我使用的是配置错误的现有应用程序。这是我现在 parameters.yml 文件中的内容:

# This file is auto-generated during the composer install
parameters:
    database_host: 127.0.0.1
    database_port: null
    database_name: symfony
    database_user: root
    database_password: null
    mailer_transport: smtp
    mailer_host: null
    mailer_user: null
    mailer_password: null
    secret: ThisTokenIsNotSoSecretChangeIt

我该如何解决这个问题?

在您的 parameters.yml 中设置以下内容:

parameters:
    ...
    mailer_transport: smtp
    mailer_host: 192.168.3.100
    mailer_user: null
    mailer_password: null

其中 mailer_host 是您的 SMTP 服务器的 IP 地址(以上是示例 IP 地址)。我一直用这个。

我通过使用我想要使用的值编辑 parameters.dist.yml 文件解决了这个问题。 Platform.sh 部署系统不会询问我要在 parameters.yml 文件中输入的值(如您所知,该文件应该被 gitignore),因此请写下您想要的结果值,就在parameters.dist.yml。这不会影响本地版本,但可以更改 parameters.yml 文件的内容。