【问题标题】:SEO and stripping UTM parameters with Varnish [closed]使用 Varnish 进行 SEO 和剥离 UTM 参数
【发布时间】:2017-12-31 02:12:40
【问题描述】:

最近我遇到了一个问题,我的一个客户发送了一封包含 URL 中包含 UTM (Google) 和 MC (Mailchimp) 参数的 MailChimp 电子邮件。

由于链接指向正在运行 Varnish 的 Magento 2 站点,因此我必须想办法解决这个问题,否则 Varnish 会为“唯一”网址创建许多不同的条目。

现在,通过在 Varnish .vcl 中使用这个调整后的 sn-p,我能够剥离这些参数:

if (req.url ~ "(\?|&)(gclid|cx|ie|cof|siteurl|zanpid|origin|mc_[a-z]+|utm_[a-z]+)=") {
    set req.url = regsuball(req.url, "(gclid|cx|ie|cof|siteurl|zanpid|origin|mc_[a-z]+|utm_[a-z]+)=[-_A-z0-9+()%.]+&?", "");
    set req.url = regsub(req.url, "[?|&]+$", "");
}

这很好用,它去除了 URL。

但是,如果这会以任何方式影响 SEO 或 Google Analytics(分析)跟踪,我似乎找不到正确的解释 - 我尽可能多地用谷歌搜索它,但找不到明确的解释。

这里有人有解决方案和/或解释吗?

【问题讨论】:

  • 我投票结束这个问题,因为它是关于 SEO,而不是编程。可以在Webmasters.SE 上询问 SEO 问题

标签: seo analytics magento2 varnish varnish-vcl


【解决方案1】:

这不会以任何方式影响 SEO。这些链接通常由 Google 本身(Analytics、Adwords)或使用相同链接的电子邮件营销活动添加。搜索引擎将不会看到这些链接,因此对 SEO 没有任何影响。

提到的参数由 Javascript 库使用,而不是由 PHP 脚本使用,因此您为更好的可缓存性所做的事情是正确的。浏览器的 Javascript 引擎仍然会看到它们,因为它们可以访问完整的 URL。 PHP 后端 (Magento) 不需要它们。

【讨论】:

  • 你好丹尼尔。感谢您的明确解释。我有点不清楚 JS 引擎是否真的得到了完整的 URL,但这应该是因为我在 vcl_recv 中完成了所有这些。 (顺便说一句,我调整和使用了你的 sn-p,所以也谢谢你;))
猜你喜欢
  • 2011-06-13
  • 2021-12-22
  • 2014-07-12
  • 1970-01-01
  • 2014-12-11
  • 2022-01-07
  • 1970-01-01
  • 2011-07-24
  • 2016-10-03
相关资源
最近更新 更多