页面速度是许多开发人员在设计独特且引人入胜的网站时面临的问题 动态内容与页面呈现时间之间的平衡通常很难找到。用户在查看页面时对网站加载时间的期望越来越高。在本文中,我们将您可以对您的站点进行一些关键优化的列表放在一起,以确保能够快速为用户呈现。
一般来说,站点性能可以分为两个主要部分:
- 服务器生成页面所需的时间
- 浏览器下载页面所需的时间
在这篇博客文章中,我们将专注于您可以通过访问者的浏览器来改善页面的渲染时间。具体来说,在网站开始显示内容(或“渲染”)之前,可能会导致用户看到空白白屏的元素。
利用浏览器缓存
当您的Web服务器设置了HTTP标头来指定缓存到期时间时,还包括浏览器指令,用于在访问者的浏览器中缓存网页的时间长短。这告诉您的访问者的浏览器从机器的本地磁盘而不是网络下载您的网站的元素(如CSS,JavaScript和图像)。由于这意味着浏览器的网络连接数较少,这将有助于确保您的网页加载速度更快。
确保您的HTTP标头包含到期日期也很重要,因此浏览器知道何时从网络获取资源,就像它们是新的一样,而不是从本地机器获取资源。
在WP Engine中,我们为您服务,因为我们的服务器已经优化为WordPress网站提供服务。默认情况下,页面设置为每十分钟过期,静态资源(如图像,CSS和JavaScript)将被设置为每30天到期。
2.启用GZIP压缩
GZIP压缩,也称为“浏览器压缩”是一种将基于文本的内容(如您的站点的代码)压缩到更轻量级和易于理解的一组字符中,以供浏览器阅读。
如果您在WP Engine中托管您的网站,我们的服务器配置已经为您的网站处理了GZIP压缩。但是,如果您在其他地方进行托管,则可能需要使用一个可帮助您优化此插件的插件,例如W3 Total Cache或“检查并启用GZIP压缩”。如果您愿意,也可以在您的站点的.htaccess文件中手动设置。
请记住,GZIP压缩仅适用于从您网站的服务器提供的页面和文件。您无法控制外部资源(如广告,外部网络字体或外部图像)是否使用GZIP。
3.结合和细化静态资源
将多个静态资源组合到一起有助于以下几个原因:浏览器下载的项目较少,下载的项目较小。这相当于更快的页面呈现时间,因为浏览器可以更快地下载页面内容。
有几个可用于帮助优化这些资源的插件,但是我们所看到的工作最成功的是Better WordPress Minify和自动优化。两者都可以选择与CDN URL一起使用,以便可以从地理位置靠近最终用户的服务器加载这些资源。
4.使用CDN
CDN可以通过从位于世界各地的服务器网络加载网站的静态资源(如图像,CSS和JavaScript)来帮助您。这意味着当德国的用户请求图像时,它将从最接近该用户的CDN服务器加载静态文件。CDN对于拥有全球观众的网站尤其重要。
在WP引擎,CDN可用于个人级计划的额外成本,并包含在专业和业务级计划中。
5.压缩图像
未优化的图像可以很容易地成为您网站加载时间最大的膨胀来源。您可以使用页面测试,如WP Engine的Page Performance工具或webpagetest.org来查看您网站加载时间的瀑布视图。如果最长加载元素是图像,或者工具推荐优化图像,则可能是时候看图像压缩插件。
两个最常见的是WP Smush和EWWW图像优化器云。这些插件都提供了有损压缩的选项,可以让您压缩图像尺寸,同时保持相同的图像质量。这不仅有助于您的网页加载速度更快,还可以减少带宽使用情况,并有助于增加复制网站或创建备份等功能。
延迟Javascript分析
如果您一直在使用页面测试工具来测试您的网站速度,那么您可能会遇到这个可能难以理解的建议。如果您使用webpagetest.org或Pingdom等工具查看页面的瀑布视图,则可能会看到在“开始渲染”行之前加载了大量JavaScript文件(.js文件)。这被称为“渲染阻止JavaScript”。
JavaScript的核心功能是在网页上执行操作,例如弹出窗口或在滑块中旋转图像。实际上,在您的网站完全加载内容和样式之前,无需加载这些操作。所以通过“Defer JavaScript分析”,这些工具真的在说,“稍后加载这个东西,而不是在页面上。”
有几个插件可以帮助您推迟这个JavaScript,但我们已经看到的工作很好,在折叠之上。这个插件也很好用自动优化和更好的WordPress Minify!
拖懒长页
对于具有长主页的一页网站和网站,Lazy Loading可以实时保存。Lazy Loading基本上可以防止页面上的元素被加载,直到访问者向下滚动才能看到它们。通过不一次加载您的长页面的所有内容,这允许您的网站开始更快渲染。用于此的常用插件将是BJ Lazy Load。
8.减少外线电话
加载网页时,该页面上的每个元素都必须由访问者的Web浏览器请求。一些网站可能有大量的广告加载,外部样式表和字体,或其他网站的元素的嵌入式/ iframe。对于每个外部请求,浏览器都必须进行DNS查找,并且必须从这些外部站点下载这些元素。DNS查找时间最终可以加起来很多浏览器加载时间。而且,如果这些网站需要很长时间才能做出回应,那么它也会影响到你自己的页面时间。减少这些呼叫的数量可以提高您的网站加载时间。