云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

域名备案_购买域名和虚拟主机_怎么买

小七 141 0

Cloudflare上的电子商务网站:最佳实践

Cloudflare为电子商务网站提供了许多好处,包括高级DDOS保护和业界领先的Web Application Firewall(WAF),可帮助保护您的交易和保护客户的私人数据。Cloudflare的一个关键特性是缓存,它允许从我们的全球数据中心网络更接近最终用户的位置提供内容。这样做可以改善用户的购物体验,并有助于提高完成购买的比例(转换率)。例如:沃尔玛发现,将页面加载时间缩短1秒,其转化率提高了2%亚马逊的一项研究显示,每延迟0.1秒,就会损失1%的销售额奥巴马竞选网站的页面加载时间增加了80%,捐款增加了14%什么是缓存?Cloudflare在全球运营超过110个数据中心。当一个网站实现Cloudflare时,该网站的访问者请求将通过最近的Cloudflare数据中心进行代理,而不是直接连接到承载该站点的web服务器(origin)。这意味着Cloudflare可以在我们的服务器上存储图像、JavaScript、CSS和HTML等内容,从而加快最终用户对这些资源的访问速度。大多数电子商务网站依赖于包含产品描述和价格等元数据的后端数据库。如果没有缓存,对产品页面的每次访问都可能涉及多个数据库请求,以获取所有必需的数据,这会增加页面加载时间的延迟,尤其是在繁忙的网站上。从Cloudflare的缓存中为网站的主页和产品页面提供服务,不仅可以消除这些昂贵的数据库调用,还可以减少源站基础设施的负载。要充分利用Cloudflare并帮助最大限度地提高网站速度,请从Cloudflare缓存中提供尽可能多的内容。Cloudflare缓存的工作原理默认情况下,Cloudflare基于固定的文件扩展名列表缓存静态内容,其中包括图像、CSS文件和pdf等资产。Cloudflare只缓存现成的静态内容(默认情况下不缓存HTML内容),是为了避免缓存不适当的数据。例如,如果购物车页面被缓存,那么下一个访问者可能会收到缓存的版本并看到包含错误内容的购物车。因此,虽然启用更多缓存可以让您充分利用Cloudflare,但它需要谨慎和深思熟虑的实现。Cloudflare上的附加缓存可以通过以下两种方式之一启用:使用页面规则或从源站发送缓存头。这两种方法在这里有更详细的解释。在这篇博文中,我们将使用页面规则,但请记住,您也可以使用来自您的来源的标题。在电子商务网站上使用缓存电子商务网站上典型的HTML页面将包含静态内容(如产品说明)和动态内容,例如:标题部分根据访问者的登录状态而变化,例如,如果用户已登录,它可能会向用户提供"登录身份…"消息当用户在网站上购物时填充的购物篮部分用户可能有一个或多个会话cookie来维护这些动态元素。在考虑到电子商务网站的动态特性的同时,很少有方法可以充分利用Cloudflare的缓存。方法1:缓存Cloudflare上的所有内容,但对私有内容绕过缓存注意:绕过Cookie缓存功能仅适用于Cloudflare业务和企业计划许多网站的访问者都是全新的、第一次访问的,换句话说,他们不会登录到网站,也不会在他们的购物篮里放任何东西。从Cloudflare缓存服务他们的请求意味着他们可以快速查看他们要查找的页面(无论是主页还是特定的产品页面)。因为他们是全新的访问者,所以整个页面都可以从Cloudflare缓存中获得服务。在大多数电子商务平台上,只要用户登录到网站或在购物篮中添加一个商品,相关的cookie就会被发送到浏览器。Cloudflare可以缓存这些页面,但是如果Cloudflare从浏览器接收到其中一个cookie,它将绕过缓存。这是通过引入带有"绕过Cookie缓存"设置的页面规则来实现的:在上面的示例中,页面规则将导致所有对站点的请求从缓存中提供服务,除非web浏览器发送了一个名为"loggedin"或"iteminbasket"的cookie。很明显,每个电子商务平台都是不同的,所以一定要仔细考虑您的设置,确保您使用正确的cookie值,以确保不会有私人数据(例如某人的购物篮)从缓存中被服务并显示给另一个访问者。方法2:通过JavaScript/AJAX填充更好的解决方案是从缓存中提供整个页面,但使用JavaScript/AJAX填充动态元素。这意味着Cloudflare将为大部分页面内容提供服务,只有较小的请求将(通过Cloudflare)直接传递到origin来填充动态元素,比如篮内容。要对此进行配置,请对静态内容使用缓存级别为"Cache Everything"的页面规则,对动态(AJAX)请求使用另一个缓存级别为"Bypass"的页面规则。在本例中,任何以及将匹配第一页规则,即缓存级别为"旁路"—Cloudflare将代理请求,但请求不会触及Cloudflare缓存。其他请求,例如页面与第一个页面规则不匹配,而是与第二个"缓存所有内容"页面规则匹配,因此产品页面是从Cloudflare缓存提供的。在这个产品页面中,动态元素(比如购物篮内容和登录状态)是使用AJAX请求动态填充的。您还应该考虑为特殊页面(如签出页面)引入其他适当的页面规则——例如,您可能希望创建一个页面规则,绕过所有签出页面的缓存。请记住:对于任何给定的请求,只会执行一个页面规则,页面规则的处理顺序与Cloudflare控制面板中的顺序相同。请阅读我们的页面规则教程,以更好地了解它们是如何工作的。进一步优化:使用轨道炮注意:Railgun功能仅适用于Cloudflare业务和企业计划Cloudflare的Railgun技术优化了Cloudflare与网站源站之间的连接,从而加速了动态HTML内容(Cloudflare缓存中无法提供的内容)。轨道炮有两种帮助:在Cloudflare和网站源站之间建立持久连接(以加快初始连接时间)通过仅发送已更改的内容来压缩从源站传递到Cloudflare的数据轨道炮前:轨道炮后:Railgun可以与前面讨论的缓存方法结合使用。如果您已经实现了方法1(绕过cookie上的缓存方法),那么Railgun将加速直接传递到origin的请求,因为存在相关的旁路缓存cookie。方法2(在Cloudflare上缓存除AJAX调用之外的所有内容以填充动态部分)已经比方法1更高效。Railgun仍然可以用于进一步加速从Cloudflare传递到origin的AJAX请求。Railgun稍微先进一点,因为它需要在原始web服务器上(或非常靠近)安装一个小软件包来处理压缩。您可以在这里阅读有关Railgun的更多信息,并在此处找到安装文档。理想情况下,一个经过良好优化的电子商务网站将尽可能地利用我们的缓存服务——除了尽可能多的静态HTML内容外,还提供来自Cloudflare网络的图像、CSS和JavaScript。添加我们的Railgun服务来加速那些不可避免的不可缓存的请求到origin web服务器,将有助于为您的客户创造一个奇妙、快速的购物体验。