如何从 Google 搜索中禁用 AMP 缓存?

How to disable AMP caching from Google Search?

Google 搜索的一些结果在 link 上带有 AMP(加速移动页面)图标,至少在使用手机时,只要您点击 link google 不加载站点,而是向您显示它的缓存版本。

我想在我的结果中禁用此行为,我认为至少有两个很好的理由:

  1. 当共享 link 时,用巨大的 google URL 代替较短的会让人头疼原来的.

  2. 安全性:当您访问任何站点并看到 URL 不是您想加载的站点时,您应该不信任它,即使它看起来像 google (请记住,您可能会被钓鱼甚至陷入 gsites 上的陷阱),Google 应该尊重这一点,而不是仅仅因为 url 看起来像 google 就鼓励用户信任它!更糟糕的是,如果结合第一个原因并且您想与朋友分享 URL。

我必须永远删除 google AMP 前缀,没有高级搜索选项或 cookie 可以让 Google 给出干净的 URL?

根据 the AMP project FAQ 你不能:

By using the AMP format, content producers are making the content in AMP files available to be cached by third parties.

作为内容制作人,我不喜欢 Google 添加他们自己的 URL,并围绕我的内容打上烙印...从消费者的角度来看,内容似乎来自 Google。说是为了提高速度,其实可以看出Google这个"free"技术背后的用意。

一个简单的 hack 是继续使用 AMP 准则来确定它为页面提供的速度,但违反了一个规则(比如添加你自己的 javascript 没有注意到)。

一旦页面出现错误,google将不会缓存它们。

通过发布 AMP 页面,您可以让 Google 或任何其他 AMP 缓存存储并传送您的网页(令人惊讶的是,这似乎是合法的):

Caching is a core part of the AMP ecosystem. Publishing a valid AMP document automatically opts it into cache delivery. (https://www.ampproject.org/docs/fundamentals/how_cached)

要停止 AMP 缓存,该项目建议通过从 <html> 标记中删除 amp 属性来使格式无效。我提议别的。

我一直不喜欢 AMP 的一点是,它 requires you to embed the JavaScript code directly from their server (https://cdn.ampproject.org/v0.js) 有效地告诉 AMP 每个 AMP 页面的每个访问者。从您自己的服务器嵌入代码可以解决此隐私问题,禁用缓存,并且仍然为您提供框架。

为此,您可以使用源代码构建自己的 AMP 框架:

https://github.com/ampproject/amphtml

但是复制 v0.js 和它获取的所有脚本到您自己的服务器要简单得多。