Rails 4动作邮件程序图像绝对路径在发送邮件时添加了代理https路径

时间:2016-08-18 08:17:56

标签: ruby-on-rails actionmailer

我正在尝试使用图片发送邮件。我用letter_opener gem检查了它没关系但是当我在我的Gmail帐户中收到邮件时,图像丢失了。图像src显示路径     https://ci6.googleusercontent.com/proxy/RLRFotvE91M7TbTVT8Todcjnjv9ymRfVHwxGRJpV-OcuAhGKbUeokSngMmgp74L6wYKN0jiiGZjbRP7StvXK3KWL7ttUSg=s0-d-e1-ft#http://localhost:3000/uploads/image/17/gost1.jpg但它应该只有http://localhost:3000/uploads/image/17/gost1.jpg而且没关系。图像标记如:

<%= image_tag(@image_for_artist) %><br>
development.erb=> 
 config.action_controller.asset_host = 'localhost:3000'
 config.action_mailer.asset_host = 'http://localhost:3000'

为什么图片代码没有显示绝对路径而不是ci6.googleusercontent.com路径。

1 个答案:

答案 0 :(得分:2)

我可以给你一个Sendgrid示例,说明为什么会这样。基本上,您可以配置电子邮件提供商是否应该&#34;包装您的链接&#34; 。因此,例如,Sendgrid正在执行此操作,以便围绕链接进行跟踪和其他数据聚合(例如,如果单击了注册链接,以及多少次),这非常有用,但不是很漂亮。

所以我的猜测是你可以在电子邮件云提供商的帐户中禁用它。

<强>更新

好的,我们需要澄清一些事情。 Gmail既可以用作电子邮件客户端用于接收电子邮件,也可以用作 SMTP服务器用于发送电子邮件。我的理解是你说你使用Gmail作为SMTP服务器。你能说清楚你是如何发送电子邮件的吗? 您的应用是使用sendmail,postfix,...其他内置电子邮件服务器解决方案,还是您使用第三方SMTP服务器(云)发送电子邮件,如Gmail SMTP,Sendgrid,Mandrill ......?

<强> UPDATE2

该应用程序使用的是Gmail SMTP服务器。在这个问题是一个解决方案 - &gt; Gmail's new image caching is breaking image links in newsletter