【问题标题】:How do I stop Gmail from stripping the values out of URLs?如何阻止 Gmail 从 URL 中删除值?
【发布时间】:2013-03-18 00:04:27
【问题描述】:

我最近了解到像 Gmail 这样的网络邮件客户端会对 HTML 电子邮件进行更改,例如将 target="_blank" 添加到 <a> 标签。

我还发现其他变化也会发生。当我从我的 PHP 脚本向 Gmail(可能还有其他 Web 邮件客户端)发送 HTML 电子邮件时,任何链接的 URL 中包含的变量值都会被删除。因此,例如,这是我在 PHP 代码中设置的值:

$mailContent = '<p><a target="_blank" href="https://example.com/confirmation.html?verification=x1x1x1x1x1x1x1x&email=yyyy@email.com">click here to go to the web site and activate your account!</a></p>';

但是当在 Gmail 中收到电子邮件时,HTML 代码如下所示:

<p><a target="_blank" href="https://example.com/confirmation.html?verification=&email=">click here to go to the web site and activate your account!</a></p>

x1x1x1x1x1x1x1xyyyy@email.com 值已从 &lt;a&gt; 标记中删除。

如何保护要传递给 URL 的变量值,以免 Gmail 删除它们?

【问题讨论】:

  • 尝试url_encode电子邮件值
  • 您能否编辑您的帖子并包含 php 代码,以显示您如何访问 gmail?谢谢
  • @alex-shesterov:我没有从 PHP 访问 Gmail。 Gmail 正在处理它收到的电子邮件。
  • @Dave M G:您是否尝试过发送到其他邮件服务器以查看 gmail 是否是实际问题?

标签: html email gmail


【解决方案1】:

在 Gmail 中的邮件上单击 查看原始/来源 以查看 URL 是否看起来应该如此。如果是这样,您知道问题在于 Gmail 如何格式化邮件以供您查看。如果即使在源代码中它也被肢解了,我想知道您的网页/php/CMS(您使用一个)中是否有任何内容会更改代码。

您应该按照@Crisp 所说的那样尝试URL-encoding。这是W3 reference

【讨论】:

    【解决方案2】:

    html 中的电子邮件使用Quoted-printable 编码。您的 $mailContent 的问题是“=”必须由 =3D

    表示

    尝试添加这个: $mailContent =quoted_printable_encode($mailContent);

    【讨论】:

      【解决方案3】:

      这可能不是完美的答案,但如果您的应用程序允许,我已经多次使用 URL 缩短器。

      http://goo.gl/ 是我的首选,因为 API 非常易于实现,而且 google 速度非常快。我在一个类中有一个函数,我只是通过它运行我的 url 并将返回值发送到我需要的任何地方。

      【讨论】:

      • +1 表示非标准和不完美但始终有效的解决方案)
      • 请注意,一些垃圾邮件过滤器会将使用 URL 缩短器的电子邮件标记为垃圾邮件。我不知道谷歌是否会将他们自己的网址缩短器标记为垃圾邮件
      【解决方案4】:

      这里的另一个不完美的答案但是,我的问题是我在 html 正文中包含了一个 http url,显然是无效的,所以我将它们更改为 https。这是在开发环境中,所以在生产环境中没有问题。

      Here 是关于此的更多信息:

      邮件正文中导致不安全网站的任何 URL 也可能需要删除。使用https://transparencyreport.google.com/safe-browsing/search 来验证这些链接。所有链接都应该正确地加上“https”前缀。 https://en.wikipedia.org/wiki/HTTPS谷歌似乎拒绝“http”。有时,但并非总是如此,从任何签名中删除链接会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-01-16
        • 1970-01-01
        • 2016-09-12
        • 2013-12-20
        • 1970-01-01
        • 1970-01-01
        • 2018-06-13
        相关资源
        最近更新 更多