Closed xiaokai58 closed 7 years ago
理论上是可以的,但你需要将各项参数填正确,而且你发送方的邮箱设置比如STMP选项你要打开,第三方登录什么的
从rails的log来看,rails这边是处理OK了,但是呢,邮件是从163发到163,rails只不过是个代理:作为代理登录mxbeijingmi@163.com并向xiaok58@163.com发送邮件,所以最终发送成功没,还是要看163是否能正确处理,我之前也遇见过rails的log显示正确却并没有收到邮件的情况,后来查了好多解决了,然后又出问题了。。。企业邮箱应该好点
你应该把你的配置信息贴出来
发送方的邮箱设置设置没
嗯,发送方和接收方的邮箱的都设置了
config.action_mailer.default_url_options = {host: 'your_site_domain.com'}
config.action_mailer.perform_deliveries = true
config.action_mailer.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
:address => 'smtp.163.com',
:port => '25',
:authentication => :login,
:user_name => ENV['163MAIL_USERNAME'],
:password => ENV['163MAIL_PASSWORD'],
:domain => 'www.163.com',
:enable_starttls_auto => true
}
your_site_domain.com填的什么 另外你关于发送邮件的控制器和视图贴上来
config.action_mailer.default_url_options = { host: '127.0.0.1', port: 3000 }
发送的地方
视图:
config.action_mailer.default_url_options = { host: '127.0.0.1', port: 3000 }
127.0.0.1是本地开发用的测试地址,c9肯定不能写这个啊,要写你的project网址url
http://stackoverflow.com/questions/30395432/rails-sending-email-after-filling-contact-form
config.action_mailer.default_url_options = {:host => "https://test4-xiaokai58.c9users.io", :port => "3000"}
这样设置?
3000也是本地的端口,可以不写,因为我也不知道端口是多少,可能是8080,不写应该就是默认的
怎么设置我也说了也不算,你大胆就尝试就行了,试对了就对了
显示说发送成功,但是实际上根本没有收到邮件