什么是AMP页面以及如何在我的网站上使用它们?

AMP页面

Amp页面是使用AMP系统规则创建的一种页面。AMP代表加速移动页面项目,该项目由谷歌和其他实体组成的联盟,试图使网络成为各种移动用户的更好地方。

基本问题
AMP是解决问题的方法,要了解其价值,您需要了解问题。值得庆幸的是,这是一个非常容易掌握的问题。

当您使用移动设备(如智能手机,平板电脑,Kindle或以后出现的任何新技术)浏览网页时,您可以在功能不足的小型设备上进行。当然,如今的智能手机比二十年前的电脑更强大,但互联网也是一个非常不同的地方。20年前的计算机无法呈现巨大的图像,播放音乐,流式传输视频或播放Flash内容,而不仅仅是功能不足的手机。

在互联网的早期,网页可能有六个HTML标签和一些纯文本内容,可能是一些超链接,而不是其他很多。平均网站只有14.1千字节,这对于网站图标来说甚至还不够。与今天相比,网站的平均大小接近2兆字节。请记住,这仍然包括大量的明文网站平均值。当你考虑流媒体视频时,像YouTube这样的东西的规模会呈指数级增长。

慢站点示例
移动设备足够强大,可以处理大部分问题,但它们会受到限制。它不一定是处理能力阻止它们; 这是通信带宽。无论服务如何,移动运营商都在不断推出新的4G5G6G7G8G,将速度提升到许多宽带桌面连接的一小部分。用户可以选择通过wifi连接,但即使这样也有局限性。结合智能手机等中较小的缓存,较小的处理器和较小的RAM,您的移动体验会明显变慢。

问题是:很多网络都很臃肿。它充斥着不必要的大图像,无法在移动设备上运行或完全无法运行的脚本,流媒体,来自其他十几个领域的嵌入式内容以及更多内容。

谷歌一直在努力使网络成为一个更适合移动设备的地方。响应式设计的出现并不是他们所做的,但响应式设计现在是搜索排名因素的事实肯定有。即便如此,响应式设计也不一定是快速设计,许多网站仍然臃肿而缓慢,即使设计时考虑到移动设备。并非每个开发人员都对移动设备可以做的事情有同样的想法,有些人并没有足够努力地达到速度超过功能的限制。

AMP解决方案
AMP是解决此问题的最新版本。我们的想法是提出一套规则 – 以“HTML子集”的形式 – 强制有问题的开发人员在某些约束下工作。对于使用移动设备和移动连接的Web浏览器,最终目标是创建能够快速呈现并尽可能即时呈现内容的网站。

Facebook创建了一个非常类似于AMP的试点计划,名为Facebook Instant Articles。FIA旨在允许发布者在Facebook基础架构上托管其内容,这种内容非常强大,旨在快速呈现内容。然而,存在缺点,即内容在Facebook上而不在内容创建者的网站上。

AMP之前和之后
AMP页面是在网站所有者的主机上从头开始设计以非常快速地加载的网站,以最理想的方式向移动用户呈现他们的内容。

AMP的设计也考虑了集成。可以从页面中提取内容并在应用程序中显示内容的应用程序将能够通过AMP页面而不是通过标准页面快速加载,从而显着减少延迟。

最重要的是,AMP由谷歌提供支持,谷歌提供了一种名为AMP Cache的东西。这是一种基于云的缓存服务,可以明确地专门用于AMP页面,从而为他们提供极其快速的服务器基础架构。如果您有快速编码页面,则瓶颈将成为您的Web主机。如果您将您的网络托管卸载到Google缓存,则瓶颈就会成为客户端的网络连接。与该连接一样快,与内容一样快。

AMP真的是什么
如上所述,AMP是“HTML的子集”。这意味着它是经过精心挑选的有效HTML标签选择,可用于创建页面。将负载放在移动设备上的标签,启用可能对移动设备有害的错误的标签,以及不推荐使用且无法正确呈现的标签都是禁止使用的标签。

AMP by Google
这并不意味着您的页面仅限于纯文本和基本HMTL。您还可以使用具有有限JavaScript库的脚本。此库包含运行最常见广告计划所需的标记,因此您不会没有广告。分析也是如此,特别是谷歌分析,谷歌显然想要包括谷歌分析。此外,AMP还提供了添加图像和优化图像的指南,以及其他形式的媒体。例如,它们支持HTML5视频,但不支持Flash,部分原因是因为Flash与移动设备有着格格不入的历史,部分原因是它效率低下且视频编解码效果不佳。

AMP页面将在SEO方面帮助您的网站。所有内容仍然在您的网站上,它仍然与您的网址相关联,它的编码方式使其优先于速度而不是绒毛。谷歌表示他们不会在普通网页上宣传AMP,但他们可能只是时间问题。此外,他们已经暗中做了; 较快的页面在较慢的页面上获得首选项,而为移动设备制作的页面在移动搜索中获得首选项。AMP涵盖了这两个因素。

如何实施AMP页面
AMP页面是以不同方式编码的网站的新页面。而已。您可以使用AMP代码重新创建现有网站,但您可能需要做出一些牺牲。如果您的代码包含需要不受支持的JavaScript代码的脚本,则必须重新编写这些脚本,或者在没有这些脚本的情况下学习。

是的,这意味着你要么制作一个部分AMP的嵌合体网站,其中一些页面编码很快,一些页面包含遗留代码,或者你将不得不重新设计整个网站。这就是实现AMP的第一步是与您的开发人员交流。说真的,这不是你自己能做的事,除非你是一个练习编码器,有诀窍解释GitHubs并尝试有限的代码。

AMP Github
虽然AMP旨在处理所有形式的内容,但最好与大多数文本内容一起使用,例如博客。需要动态代码的内容,如社交网络,将受到限制的阻碍。然而,Facebook并不是要为自己的代码库挖掘AMP; 他们有自己的标准。博客可以并且应该在可能的情况下进行转换,以获得良好,快速的网络基础。

除了重新设计代码之外,实现AMP并没有什么棘手的问题。只需与您的开发人员讨论AMP标准网站的重新设计,他们将引导您完成其余的工作。

AMP肮脏的秘密
一个具有挑衅性的头衔,但不一定偏离基础。加速移动页面项目是一个有趣的概念,它肯定会使某些网站更快地创造奇迹,但在它首次亮相后的六个月内,您可以计算在几个突变手上使用它的网站数量。根据他们的网站,只有47个北美网站使用它,而其中一些是大牌 – 纽约时报,Entreprenuer,CNN,迪士尼,eBay,Vox – 这些并未预示着广泛的采用或支持。

AMP实际上不是新代码。它不是一种新的编码语言。它在演示之外并不是真正独一无二的。这就好像可口可乐公司服用健怡可乐并生产了一种全新的苏打水,其全新名称与可口可乐或饮食无关。它仍然具有相同的配方,相同的味道,相同的糖限制,它只是被称为不同的东西。

这就是AMP的基本HTML和JavaScript最佳实践,包含在漂亮的弓形中。这是基于理想环境的一系列限制,旨在强制Web开发人员遵守速度和移动可访问性指南。

AMP本身并没有提供任何独特的东西。它没有带来什么。您无法获得转换为AMP的奖励或奖励,就像您可能从Allstate切换到Geico一样。如果您的网站已经运行良好,可以快速加载并可通过移动设备访问,那么您对AMP代码的更改无济于事。

以同样的方式,如果您已经拥有高速CDN或非常好的网络托管,那么使用Google AMP Cache 可以获得很少或没有任何收益。尽管有任何其他奇特的名字,一台服务器非常像另一台服务器; 只要它很快,谁拥有它并不重要。

AMP有两个原因。第一个是作为一组规则供Web开发人员遵守以便建立一个快速站点。经验丰富且高质量的Web开发人员不需要这些指南,因为他们已经知道如何建立一个快速的站点。他们已经知道最佳做法是什么。他们知道如何以可能比AMP允许的更强大的方式迎合移动设备。但是,任何不在球上的Web开发人员或需要指导的开发人员都可能被迫在AMP的限制范围内工作,并推出快速加载站点。

第二个原因是方便。您不必学习网络历史,研究HTML和CSS以及JavaScript和XML以及其他所有内容,研究各种行业最佳实践。您不必过滤2003年可能会或可能不会应用的信息。您已经在您正在使用的代码中内置了规则和指南,尽管它的基础是HTML。您可以让代码限制完成繁重工作,并保证您生成的代码在完成后会很快。

AMP确实可以免费使用Google的Cache CDN,而且它本身就是免费的。您不需要购买昂贵的框架并在其上开发网站。但是,如果你已经有一个好的CDN – 或者一个网站足够快而不需要一个 – 你就不会从切换到AMP中获得任何好处。

然而,AMP有一个明显的缺点,那就是框架本身。它受限制的事实本质上是对网络灵活性和开放性的阻碍。当然,努力确保移动设备能够在网络上呈现任何内容当然是一个有价值的目标,但与此同时,微技术的进步也使得每年都越来越真实。当我们推进硬件以满足它时,我们不必回拨我们的代码。

出于这个原因,我相信AMP永远是一个利基编码风格,而不是每个博客或企业的必备品。它不像响应式设计,它对于浏览设备的广泛多样性本质越来越重要。更确切地说,这是一种精明的顾问可以用来作为时髦网站来遵守现代网络标准的方法,而无需解释所有这些现代网络标准。