如果网页是通过 Cloudflare 代理传送的,网页上的 LINEs "add friend" 按钮会消失

LINE's "add friend" bottons on webpage disappear if the webpage is delivered via Cloudflare proxy

我们的网站已经通过 Cloudflare 代理服务了很长时间,一切顺利。最近我们想在网页上放置社交媒体按钮,我们有 LINE and for Facebook 的按钮。在 localhost 中测试时,两种社交媒体的按钮均正常工作。但是,当页面更新到生产环境时,我们发现LINE的按钮没有显示,只能看到Facebook的。后来发现关闭Cloudflare的proxy LINE的按钮出现了!这个问题如图所示。还确认如果我们将页面放在另一台服务器上,页面不通过 Cloudflare 代理,则可以正常看到 LINE 的按钮。这些按钮使用简单的 html 和 javascript.

嵌入到网页中

我们不想为了显示社交媒体按钮而永久关闭 Cloudflare 代理,但我们不知道如何防止 LINE 的按钮不可见。你能帮忙指出我们遗漏的关键是什么吗?非常感谢!

值得检查一下您是否启用了特定的 Cloudflare 功能,这可能会影响第 3 方的执行 Javascript 代码:

  1. 速度选项中选中“JS”自动缩小(documentation)
  2. 检查 Rocket Loader,如果启用,请尝试禁用它 (documentation)

通常 (1) 不太可能导致任何问题。浏览器开发者控制台是否有错误,或者两种情况下加载资源是否有错误,您也应该检查并分享 - 这将有助于找到根本原因。