WooCommerce:11 个性能、安全性和可扩展性技巧

已发表: 2023-06-01

WooCommerce 网站需要始终运行:它们必须快速加载、安全并处理大量流量高峰。

如果没有正确的策略和专业知识,实现这一目标可能是一项艰巨的任务,尤其是在处理大量访客时,因为一个问题可能会导致数小时的停机和销售损失。

在本文中,我们的特邀嘉宾 Dr Tech 的创始人 Martin Ronfort将分享您可以应用于 WooCommerce 商店并轻松发展的策略和流程的概述

事实上,在 Dr Tech,他们管理着数以千计的 WooCommerce 商店——从刚刚起步的小型企业到拥有数百万请求和重大营销活动的商店——并处理所有技术方面,例如托管、加载速度、安全性、更新、备份、正常运行时间和可扩展性。

走吧,马丁!

目录
  1. 性能优化
  2. 数据优化
  3. 安全
  4. 可扩展性
  5. 结论

性能优化

1.CDN

让我们直接从您可以做的最大优化开始。 如果您还没有使用 CDN,这将在加载速度方面为您带来最大的好处。

如果您不知道 CDN 是什么,内容交付网络是位于世界不同地区的服务器网络,它们协同工作以更快、更高效地向用户交付网站内容。 当用户从网站请求网页或文件时,CDN 会自动将请求重定向到网络中最近的可以传送内容的服务器。 这不仅减少了网站服务器的负载,还减少了内容到达用户所需的时间,从而加快页面加载时间和更好的用户体验。

Tech 博士使用 Cloudflare 完成四项基本任务:内容卸载、图像优化、缩小和整页交付。

内容卸载

通过将您的 JS、CSS 和图像卸载到 CDN 并将它们缓存在那里,所有这些文件将从 CDN 的服务器而不是您的服务器提供。 这样,您将显着提高加载速度,因为 Cloudflare 在世界各地拥有数据中心,并将使用离您的访问者最近的数据中心来提供内容。 此外,它将大大减少服务器的负载,从而节省成本(我们已经看到商店在 CDN 上缓存了 80% 以上的请求!)。

图片优化

Cloudflare 的内置图像优化工具会自动将您的图像转换为 WebP,同时减小它们的大小。

缩小

我们建议使用 Cloudflare 进行缩小而不是您的缓存插件,因为它更有效。 但是,在缩小时要小心,因为它可能会破坏您的网站(这取决于您使用的主题和插件)。 因此,请确保在实施后的几天内测试您的在线商店,以确保它能正常运行。 如果它不能正常工作,只需停用它。

全页交付

这就是您如何实现低于 1 秒的加载时间和低于 100 毫秒的 TTFB。 这个想法是将整个页面缓存在 CDN 上。 当访问者访问您的商店时,整个页面会直接从 CDN 的服务器加载,并且 0 个请求会发送到您的服务器。 Cloudflare 在世界各地都有服务器,这意味着您的内容将从访问者附近的服务器提供给他们! 由于它是静态内容,您的网站将加载速度超快

2.托管

要高效地运营 WooCommerce 商店,请避免每月仅花费几美元的廉价共享托管服务。 即使尽最大努力,您也没有足够的资源来确保快速的加载速度和可靠性。 虽然它们可能足以用于小型网站或博客,但它们不适合电子商务——它们只是缺乏电子商务所需的功能。

另一个需要考虑的问题是迁移的复杂性,尤其是在客户访问您的网站并可能随时购买您的产品的电子商务中。 迁移需要停机时间,这意味着一旦您的这些小型服务器的容量无法满足,您将需要迁移到更大的服务器。 这样做需要让您的网站脱机,可能会导致销售损失并对您的业务产生负面影响。

相反,我们建议使用以下服务器:

  • 针对 WooCommerce 进行了优化
  • 灵活地允许您随着增长增加资源(CPU、RAM 和存储),从而避免迁移的需要。 这称为垂直扩展,我们将在有关可扩展性的部分中详细讨论它。

3.缓存

在 Dr Tech,我们使用 W3TC 插件进行缓存(免费版就足够了),但您可以使用另一个缓存插件——事实上,由于大部分性能优化是由 CDN 完成的,所以您使用哪个插件并不重要使用。 W3TC 和其他缓存插件非常复杂。 但是,我们只使用了两个功能:页面缓存和 CDN。

页面缓存

实施页面缓存时,请确保排除任何不应缓存的页面。 例如,如果站点地图被缓存,像 Yoast 这样的 SEO 插件可能会导致问题(我们在 Dr Tech 上遇到过这个问题)。 默认情况下,所有 WooCommerce 页面都应该被排除在外,包括购物车、结帐和我的帐户。 为确保一切正常,请启用页面缓存并测试您的站点。 如果出现任何问题,请从缓存中排除有问题的页面。

内容分发网络

缓存插件的 CDN 功能会将所有静态文件(JS、CSS 和图像)放在 CDN 上。 您还需要在 CDN 上进行配置以启用这些文件的缓存。

4. 管理你的代码

为了获得最佳性能,必须确保您使用的主题和插件经过良好编码并遵循 WordPress 的最佳实践。 如果他们不这样做,最好根本不要使用它们。

此外,如果您要使用的插件或主题不遵循 WordPress 的最佳实践,您将在以后的电子商务之旅中遇到更新和安全问题。

为实现这一点,您可以聘请拥有这方面知识的熟练开发人员,或者通过 WordPress 和 WooCommerce 文档获得对该主题的更多见解。 一切都描述得很好。

在 Dr Tech,为确保一切正常,我们在将所有插件和主题的代码提供给 Dr Tech 用户之前对其进行验证。 如果他们不遵循 WordPress 的最佳实践,我们将不包括他们。 只要有可能,我们就如何改进代码向开发人员提供建议,等待他们修复它,然后再添加它

数据优化

这里的想法很简单:您网站上不需要的东西不应该出现在您的网站上。 要么你应该删除它,要么一开始就不应该添加它。 任何不必要的数据都会增加您的存储使用量(您为此付费)、CPU 和 RAM 使用量(您也为此付费),并降低您的数据库速度。 因此,您总是希望您的在线商店尽可能小。

5.使用暂存站点

首先,您应该使用暂存站点。 在那里,您可以测试新主题、插件、自定义代码或任何您想要的东西。 只有在确定要使用它们后,才将它们添加到您的主站点。 永远不要在你的主站点上测试东西。

这是因为插件和主题会向您的网站添加大量数据,并且当您删除它们时,几乎没有一个会清理自己的数据。 WordPress 没有清理功能来删除您刚刚安装 2 分钟并立即删除的插件的数据。 它的数据将永远存在于您的在线商店中。

6.删除旧的和未使用的数据

即使您尽量小心不要向您的商店添加任何无用的数据,您仍然会有一些。 例如,发布修订。 它们是您的网页、博客文章、产品和在线商店中其他类型内容的旧版本,这些内容会自动保留为备份。 有时这可能很有用,但一旦您的内容发布几周后,您可能就不再需要这些备份了。 此外,默认情况下,WordPress 将为您的所有帖子保留无限数量的修订,您可能不需要那么多。 值得庆幸的是,您只需在 wp-config 文件中添加一行代码来限制 WordPress 将保留的修订数量(例如,您可以保留 5 个):

define( 'WP_POST_REVISIONS', 5 );

修订是您要删除的一种数据; 任何你不使用的东西都应该被删除以确保最佳性能。 特别是如果它在您的数据库中!

安全

出于我们自己的 Dr Tech 安全目的,我无法告诉您我们为保护我们的基础设施所做的一切。 但以下是我们可以与您分享的一些最佳实践。

首先,我们可以说,当你还小而且没有压力时,建立良好的实践、良好的流程和良好的习惯要容易得多。 如果您遇到安全问题,那将是一个压力非常大的时刻——修复问题比预防更难!

7. 不要让别人访问你的网站

在 WordPress 社区中,开发人员请求您的 WP 管理员或 FTP 凭据是一种常见的做法。 虽然我承认这是一个可以帮助您的快速解决方案,但授予此访问权限可以让他们对您的商店拥有完全的权力——他们可以访问您的文件、数据……一切。 尽管大多数人都有良好的意愿,但安全始于建立健康的实践。 因此,永远不要泄露您的管理员密码并避免让您团队以外的任何人修改您不理解或未检查的任何代码是至关重要的。

相反,最好寻求指导并自己执行任务。

您还可以使用临时站点并让开发人员在那里工作。 然后,您可以查看更改并将它们应用到您自己的主站点。

8. 检查你的代码

您不希望人们访问您的代码的原因是存在大量潜在漏洞。 例如,后门是最常见的漏洞之一。 这些后门使外部人员可以未经授权访问您的网站,从而使他们可以做任何事情,从窃取数据到控制您的整个网站。 确保您的代码没有后门和其他漏洞至关重要。

所以如果你需要聘请外部开发人员,安装新主题或新插件也一样,你需要采取一些预防措施。 即使他们没有恶意,他们也可能缺乏必要的经验、知识或对细节的关注,以避免造成严重的漏洞问题。 最好在您的团队中有经验丰富的专业人员来审查和验证所有内容。

此外,即使您的商店目前很小并且对攻击者没有吸引力,也必须保持警惕并确保您的网站在发展过程中保持安全。 尽早养成良好的安全习惯比在攻击者已经发现漏洞时尝试修复要容易得多。

9、增加工具:WAF、DDOS、暴力破解防护

WAF

WAF(Web 应用程序防火墙)是一种安全工具,可帮助保护网站免受恶意攻击,例如 SQL 注入和跨站点脚本。 它充当网站和互联网之间的过滤器,检查传入流量并阻止任何有害请求。

对于您的电子商务商店,WAF 尤为重要,因为它有助于防止可能危及敏感客户数据(例如信用卡信息)的攻击。

DDOS防护

DDOS 或分布式拒绝服务是一种网络攻击,其中多个系统使您的网站充满流量,使您的服务器不堪重负,并导致合法用户无法使用。 这种类型的攻击通常由黑客或其他恶意行为者执行,作为破坏或关闭网站或在线服务的一种方式。

如果没有 DDOS 保护,成功的攻击可能会导致严重停机、销售损失以及企业声誉受损。 DDOS 保护可以在恶意流量淹没您的在线商店之前检测并阻止它们,从而帮助减轻这些攻击的影响。

蛮力保护

蛮力攻击是一种网络攻击,在这种攻击中,攻击者通过反复尝试不同的字符组合直到找到正确的字符来尝试猜测用户的密码。 如果您的在线商店没有任何东西可以阻止此类攻击,则此类攻击会非常有效。 您还应该使用强密码并使用双因素身份验证和速率限制等安全措施来限制登录尝试的次数。 你也不应该使用一个非常简单的伪装作为你的管理员登录,不要使用“admin”

可扩展性

恭喜您开店并增加了销售额和流量! 现在您的商店在增长,您的服务器基础设施也必须增长。 有两种扩展基础架构的方法:垂直扩展和水平扩展(也称为多服务器基础架构)。

10.垂直缩放

垂直缩放很简单。 当您需要更多资源时,您可以通过添加更多 RAM、CPU 和存储来提高服务器的规格。 然后,您就可以开始了,直到您需要再次执行此操作。

此解决方案一直有效,直到您达到服务器的最大容量。 不幸的是,垂直扩展不是无限的,托管您商店的物理机器有局限性。 这是扩展变得复杂的时候,您必须迁移到多服务器基础架构。

此外,还有一个不使用廉价服务器的原因:它只会导致更快地达到其最大容量并需要迁移到更大的服务器。 此迁移将导致停机,您希望避免这种情况。 从一台有可能扩展到尽可能大的好服务器开始,这将节省您的时间和精力。

11. 横向扩展:多服务器基础设施

借助多服务器基础架构,您可以扩展业务而不必担心资源限制,并且可以轻松应对网站流量的高峰。 随着您的需求增长,您可以简单地添加更多服务器,或者在不再需要时删除它们。

理想情况下,您希望从头开始构建多服务器基础架构。 但因为它更复杂、更昂贵,所以大多数企业都是从垂直扩展开始的。 然而,总会有一个单一的服务器无法处理流量的时刻,并且需要具有专业技能的团队来创建和维护多服务器设置以实现持续增长。

我建议尽早考虑此选项,如果您进行垂直缩放,最好在达到服务器的最大潜力之前。 这将有助于避免任何限制,并为新设置提供顺畅无压力的规划过程!

奖金

多服务器基础架构将大大提高正常运行时间。 通过拥有多个服务器的能力,您可以让备用服务器准备好在发生故障时接管。 通过使用负载平衡器,您可以在服务器之间分配流量,并自动停止向运行不正常的服务器发送流量。 这为您的业务创建了一个更加稳定的基础架构。

在 Tech 博士,这就是我们所做的。 我们从一开始就将您的商店放在多服务器基础架构上,并使用负载均衡器来确保您的商店可以增长并处理大量流量而不会出现任何资源问题。

结论

性能、安全性和可扩展性与您在 WooCommerce 网站上销售的产品的质量一样重要。

您可以拥有市场上最好的产品,但如果您因为 WooCommerce 网站未优化而让客户失望,您可能会错失大量潜在收入(反之亦然!如果您拥有最好的和最多的在这个星球上优化了 WooCommerce 网站,但您销售的产品没有人想要或不喜欢,您已经浪费了时间和金钱投资)。

现在由您在自己的 WooCommerce 网站上采取行动,使其更快、更安全,并能够很好地应对流量高峰。

如果您不想自己实施这些策略,您可以随时将您的网站迁移到 Dr Tech,这样您就可以专注于发展您的业务,而他们会处理其他一切。 他们目前提供 7 天免费试用,然后在接下来的 3 个月内每月只需 1 美元。 在 Dr Tech 网站上了解更多信息。