【问题标题】:Is html style blocked by gmail for unsigned mail?gmail是否阻止了未签名邮件的html样式?
【发布时间】:2019-09-14 22:24:22
【问题描述】:

我正在尝试设置一个电子邮件验证系统,作为我正在开发的辅助项目 Web 应用程序的一部分。该系统使用 Rails 通过邮件程序在 linux 服务器上发送电子邮件。我正在使用我的个人电子邮件地址(恰好是 gmail 地址)作为测试用例。 HTML 电子邮件的样式信息嵌入在 HTML 电子邮件的<head> 中的<style> 标记中。这似乎是正确的,虽然很难说它完全正确,因为样式数据很长。 (同样的样式数据适用于应用程序的 Web 版本,我将其嵌入到电子邮件中 ​​- 我最终将为电子邮件创建一个单独的样式表,其中仅包含相关样式,但现在,我正在使用为简单起见,我的 Web 样式表)

电子邮件中似乎没有像我预期的那样显示任何样式。我注意到我收到的电子邮件名称旁边有一个小问号,表示该电子邮件未通过 google 验证。消息头还包含以下内容:

ARC-Authentication-Results: i=1; mx.google.com;
       spf=neutral (google.com: 45.56.123.196 is neither permitted nor denied by best guess record for domain of no-reply@myapplication.io) smtp.mailfrom=no-reply@myapplication.io

我想知道是否缺少 SPF 验证导致 google 不显示电子邮件 HTML 版本的样式数据?我似乎找不到另一个理由。我没有另一个不使用 gmail 作为客户端的电子邮件地址(我的工作和其他个人电子邮件都使用 gmail),所以我不能测试它是否不是通过 google 路由的。得到解决。

rails 的邮件预览似乎表明 HTML 电子邮件应该可以工作,但 gmail 的显示方式与邮件预览不同(事实上,甚至没有关闭)。我不太确定我能做些什么来解决这个问题,所以欢迎任何关于我可以做些什么来帮助解决这个问题的建议。

【问题讨论】:

  • 我不会在邮件上使用

标签: css ruby-on-rails email


【解决方案1】:

SPF 不应成为与样式相关的问题。您可以通过从gmail 域(SMTP 配置中的发件人域)和您自己的 gmail 地址发送电子邮件来确保这一点。如果它有效,那么问题不应该在 SPF 中。

但是当您的电子邮件到达 SAPM 时,您会遇到问题,在这种情况下,外部 URL 将不起作用,因为 Gmail 会出于安全目的限制外部 API 调用,因此如果您加载任何图像或任何其他资产,那么它就不会工作。这就是为什么电子邮件中的图像无法在垃圾邮件中打开的原因。

注意如果您的样式标签有语法错误,Gmail 将删除整个样式。所以请确保您没有任何语法错误。你有很多在线工具来验证语法错误。

仅供参考:最好也解决 SPF 问题,否则您的电子邮件将进入垃圾邮件,因为大多数 ESP 都希望通过 SPF、DKIM 和 DMARC。

【讨论】:

    猜你喜欢
    • 2013-07-10
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    • 1970-01-01
    • 2012-02-21
    • 2017-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多