用 ActionMailer 来发邮件,我用自己的 gmail 个人账号来设置 smtp,发送邮件成功。
这是不是说明,只要有一个邮箱的账号密码,就能以那个邮箱的名义去发邮件?
那我想试试公司邮箱个人账号,结果却出错了。
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'mail.xxx.com.cn',
port: 25,
domain: 'example.com',
user_name: '[email protected]',
password: 'xxx',
authentication: 'plain',
enable_starttls_auto: true
}
会提示我说
OpenSSL::SSL::SSLError: hostname "mail.xxx.com.cn" does not match the server certificate
后来我就加了句openssl_verify_mode: OpenSSL::SSL::VERIFY_NONE
结果提示我:
Net::SMTPFatalError: 554 5.7.1 Error: deny openrelay from xxx.xxx.xxx.xxx
你们觉得哪里需要改下设置呢?是不是邮件服务器那边要设置下?比如在 DNS 设置什么 MX 之类?
暂时申请了一个新的 gmail 帐号,专门用来发邮件…
想学使用 Rails 自带的邮件系统,脑子乱乱的:
要先搭建邮件服务器吗? 我看了看《鸟哥的 Linux 私房菜——服务器架设篇》里的 22 章:邮件服务器,感觉好复杂,都看不下去,就怕一不小心设置不当,被弄成 Open Relay,变成垃圾邮件中转站怎么办?
要设置 DNS 吗? 以前好像尝试过用 QQ 企业邮箱的,所以在 DNSPod 设置了 MX 相关的东东(但没实际使用过),用 ActionMailer 的话,也要设置的吗?
如果我只发邮件不收呢?有哪些步骤又能省却?
目前我看我用的主机上是装了 postfix 的,但没有设置。看 Rails 的教程好像也没有提到要设置什么。难道 rails 内置类似 postfix 之类的邮件服务器的功能? 教程中提到 Rails 通过 SMTP (port 25) 发送邮件,我需要在哪里设置什么? 目前我只知道:
$ netstat -tlnp | grep :25
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2066/master
tcp 0 0 ::1:25 :::* LISTEN 2066/master
借用第三方的邮件服务器。最好能借用公司的……(但公司的邮箱系统我无法控制,是上级公司负责的)