适用于 WordPress 的最佳 Amazon S3 集成

Amazon S3 是 Amazon Web Services 许多产品的一部分,用作存储解决方案。它由需要存储大文件(例如软件、游戏、视频、pdf、音频文件、下载等)和额外备份的大型网站使用。亚马逊因其可靠性和极低的存储成本而成为存储和备份的理想选择。 Netflix、Airbnb、SmugMug、Nasdaq 等大型门户网站依靠 S3 以低成本存储大量数据。

为什么选择亚马逊 S3?

Amazon S3 专门处理大容量存储。使用此存储选项,可以保证存储成本将比您的 WordPress 主机低很多。将媒体驻留在 AWS 不仅经济高效,而且第一年几乎免费(最多 5 GB 存储)。由于大型媒体文件是从 Amazon 调用的,因此可以减轻 WordPress 网站的负载,从而加快加载时间。 S3 不仅可以保存游戏、PDF、视频、音频等文件,还可以保存 CSS、JavaScript 等资产。

我们将 Amazon S3 存储位置称为“存储桶”。它是您保存在其他地方的文件集合,以便减少网站上的负载以获得更好的性能。

如何设置 WordPress S3 集成?

要将 WordPress 与 Amazon S3 集成,您需要:

  • 亚马逊网络服务帐户 – 可免费注册。
  • 公共 Amazon S3 存储桶 – 第一年免费(最多 5GB)。
  • WordPress S3plugin– 这会自动将您上传到 WordPress 的文件复制到您的 S3 存储桶。

WP Media Folder和 WP Offload 媒体plugin

为了将 S3 与 WordPress 集成,我们推荐WP Media Folder和 WP Offload Mediaplugin。当您将文件上传到媒体库时,此plugin您还可以配置添加 CDN,例如 Amazon CloudFront、MaxCDN 或 KeyCDN。如果您决定获取资产插件,那么WP Offload Media Plugin可以识别您的网站使用的资产(CSS、JS、图像等),并从您选择的 CDN 中获取它们。

如何将 WordPress 与 Amazon S3 集成:分步指南

在我们开始此过程之前,建议您备份您的网站以应对任何不良情况。

第 1 步:安装并激活WP Media Folder和 WP Offload 媒体plugin

在开始集成过程之前,最好确保您已在站点上安装并激活了该plugin。

激活plugin时,系统将提示您定义 AWS 密钥。 (这就是我们接下来要做的事情——生成 AWS 密钥)

步骤 2:在 Amazon S3 上创建新存储桶

创建免费的 Amazon Web Services 账户后,从 AWS 控制面板导航至 Amazon S3 部分。

在 S3 界面中,单击“创建存储桶”按钮。

在弹出的界面上填写这些详细信息:

  • 存储桶名称
  • 选择一个区域(靠近您的目标受众,特别是如果您不打算使用 CDN)
  • 点击“创建”

步骤3:设置存储桶策略

为了网站的顺利运行,请通过设置存储桶策略来公开您的 S3 存储桶。

在 S3 界面中,单击您的存储桶:

新创建的“ codeinwp”存储桶被标记为Not public ,但您需要该存储桶的 Public 指示器。

单击“权限”选项卡 > 选择“存储桶策略”:

您可以看到一个 JSON 代码编辑器。将以下代码片段粘贴到编辑器中并保存更改。

{

                “版本”:“2008-10-17”,

                “陈述”: [

                {

                                “Sid”:“允许公共阅读”,

                                “效果”:“允许”,

                                “主要的”: {

                                                “AWS”:“*”

                                },

                                “操作”:“s3:GetObject”,

                                “资源”:“arn:aws:s3:::codeinwp/*”

                }

                ]

}

注意:您的存储桶名称应与代码片段中使用的名称匹配。如果您将存储桶命名为“XYZ”,请确保将 codeinwp 替换为“XYZ”。

  • “保存”更改

保存更改后,存储桶将在 Amazon S3 控制面板中公共

步骤 4:创建 IAM 用户和策略

创建 IAM 用户允许plugin管理您的 S3 存储桶。如果您希望plugin自动复制上传到 WordPress 的文件,这是必须的。

这一步很复杂,因此我们将其分解为许多简单的步骤,以便更好地理解。

完成此过程后,您将获得plugin所需的 AWS 密钥。

要创建 IAM 用户,请前往您的 AWS 账户中的 IAM 区域。

选择用户选项卡:

点击顶部的添加用户

在“添加用户”界面中,提供用户的名称。不要忘记访问类型编程访问。然后,单击下一步:权限

在下一个窗口中,选择直接附加现有策略卡,然后选择创建策略

这将导致一个新窗口。在新窗口中,转到 JSON 选项卡并粘贴以下代码片段:

{

                “版本”:“2012-10-17”,

                “陈述”: [

                {

                                “效果”:“允许”,

                                “行动”: [

                                                “s3:创建桶”,

                                                “s3:删除对象”,

                                                “s3:放入*”,

                                                “s3:获取*”,

                                                “s3:列表*”

                                ],

                                “资源”:[

                                                “arn:aws:s3:::codeinwp”,

                                                “arn:aws:s3:::codeinwp/*”

                                ]

                }

                ]

}

确保将 codeinwp 的两个实例替换为您的 Amazon S3 存储桶的实际名称 (XYZ)。

之后,单击底部的“查看策略”

在下一个屏幕上,提供名称,然后单击创建策略

现在,返回到您之前访问过的IAM 添加用户刷新 >从列表中选择您刚刚创建的策略(您可以通过按名称搜索来节省时间) > 单击下一步:查看:

在下一个屏幕上,单击创建用户

您应该能够在下一个屏幕上看到这些:

  • 访问密钥 ID
  • 秘密访问密钥(如果您想查看秘密密钥,请单击“显示”

提示:您可能希望将这两个值保留在手边,因为您将在下一步中需要它们。

步骤 5:将访问密钥添加到 wp-config.php 文件

现在,当您使用完 AWS 界面后,您可以返回 WordPress 站点以进行轻松配置。

在这里,您需要处理您的 wp-config.php 文件。有两种方法可以实现 - 通过 FTP 或 cPanel 文件管理器。

将以下代码片段添加到您的 wp-config.php 文件中。不要忘记将星号替换为上一步中的实际密钥(我们告诉您的密钥放在手边):

定义( 'AS3CF_AWS_ACCESS_KEY_ID', '********************' );

定义( 'AS3CF_AWS_SECRET_ACCESS_KEY', '*********************' );

这是我网站的 wp-config.php 文件中的样子:

不要忘记保存所做的更改。

步骤 6:在WP Media Folder和 WP Offload 媒体中选择 S3 存储桶

转至设置 → 卸载 S3。

系统将提示您输入存储桶的名称:您想使用哪个存储桶?在字段中填写您的 S3 存储桶的名称 (XYZ),然后单击保存存储桶

保存更改后,您可以看到完整的plugin界面:

注意:用于搜索现有存储桶创建新存储桶将不起作用。

步骤 7:配置卸载 S3 设置(可选)

到目前为止,您已基本完成设置。您所有新上传的内容都会自动卸载到 Amazon S3。此外,该plugin将自动重写这些文件的文件 URL。这样,文件将从 Amazon S3 而不是您的服务器发送。

要将现有文件上传到 Amazon S3,您需要高级版本。

如果您想更改任何特定内容,您可以尝试该plugin的功能。然而,对于大多数情况,默认设置就很好。

将 Amazon S3 用于 WordPress 网站的优势

  1. 对服务器的请求较少

由于您的文件不存放在服务器上,服务器的负载将减少,因为它不再负责提供媒体文件或潜在资产。这可以更快地加载页面。

  • 经济实惠的存储空间

如果您担心超出主机的存储限制,S3 可以为此提供最便宜的解决方案。

  • 分离媒体

由于大型媒体文件与您的站点保持分离,因此升级或在 WordPress 站点之间移动(例如在主机之间)要容易得多。移动时,您只是移动 PHP 文件,这些文件非常轻且易于移动。

  • 可扩展性

Amazon S3 为互联网的主要部分提供支持。这意味着如果 Ammmazzzon 扩大规模,您的网站也将扩大规模。

  • 第一年免费

Amazon S3 第一年免费(最多 5GB 存储)。

结论

您可以使用 WordPress S3plugin轻松卸载大型媒体文件,并且还可以从 Amazon Web Services 的基础设施中受益。整个过程不超过30分钟。一旦您将 WordPressss 与 Amazon S3 集成,您的网站将更加高效、快速,您的访问者也会更加满意。

发表评论

您的电子邮件地址不会被公开。 必填字段已标记为*