在symfony 1.4中配置factoriess.yml

时间:2013-01-20 21:45:42

标签: php symfony-1.4 mailer

首先我有emial aaa@bbb.com并且有另一封电子邮件不属于我,例如ccc@ddd.com或其他任何内容blabla@bla.com

IN factories.yml我使用以下

配置了邮件程序
mailer:
  class: sfMailer
  param:
    logging:           %SF_LOGGING_ENABLED%
    charset:           %SF_CHARSET%
    delivery_strategy: realtime
    transport:
      class: Swift_SmtpTransport
      param:
        host:       smtp.localhost.com
        port:       25
        username:   aaa@bbb.com
        password:   123456

在代码中...发送我使用的电子邮件

         $message = Swift_Message::newInstance()->setSubject('sub')->setFrom('ccc@ddd.com')->setTo('yahoo@yahoo.com');
         sfContext::getInstance()->getMailer()->send($message);

现在我setFrom()---> ccc@ddd.com但是我使用另一封电子邮件factories.yml !!!!

配置了aaa@bbb.com

最后发送的邮件来自ccc@ddd.com,这实际上不是我的电子邮件

2 个答案:

答案 0 :(得分:0)

factories.yml文件详细说明了SMTP详细信息

param:
    host:       smtp.localhost.com
    port:       25
    username:   aaa@bbb.com
    password:   123456

此处username是用于登录smtp服务器的用户名。不是电子邮件的电子邮件地址。

这一行

$message = Swift_Message::newInstance()
                  ->setSubject('sub')
                  ->setFrom('ccc@ddd.com')

确定电子邮件的发件人地址。

See the docs for swift mailer for the methods

答案 1 :(得分:0)

工厂参数仅用于smtp autentication。 根据我的经验,大多数客户不接受从与电子邮件中定义的站点不同的站点发起的邮件。

例如,

param:
    host:       smtp.example.com
    port:       25
    username:   mail@example.com
    password:   123

可以发送来自anything@example.com的邮件没有问题,但无法从anything@otherdomain.com发送。在大多数情况下,它将被拒绝。

当主机是localhost时也是如此,只有在使用托管应用程序的域时,它才能正常工作。

param:
        host:       localhost
        port:       25
        username:   mail@localorassociatedmail.com
        password:   123

如果托管在aaa.com上,它只能在From:设置为anything@aaa.com时正常工作。

如果它被认为是垃圾邮件,我就不会说它,在某些情况下它甚至都不会出现。