jonnyw/craft-awss3assets

一款Craft CMS插件,允许您将资源上传到AWS S3存储桶。

v1.2.0 2016-11-24 11:09 UTC

This package is not auto-updated.

Last update: 2024-09-15 00:38:54 UTC


README

当您在Craft控制面板中上传或替换资源时,您的资源将被上传到您的AWS S3存储桶。当您删除资源时,您的资源将从您的S3存储桶中删除。

此插件对于从CloudFront CDN提供资源非常有用,并简化了在多个服务器实例上负载均衡Craft应用程序。

Total Downloads Latest Stable Version

需求

  • PHP 5.6+
  • AWS S3存储桶 - 文档
  • AWS CloudFront分发(可选) - 文档

安装

建议您使用Composer来管理此插件。如果您尚未为PHP项目使用Composer,那么您值得看看它。它可以为任何新或现有项目轻松设置,并简化了包管理。

在您的项目中设置Composer后,只需要求AWS S3 Assets包即可。

composer require jonnyw/craft-awss3assets

设置

安装插件后,转到Craft控制面板中的设置 > 插件。如果您已正确安装插件,则应在插件列表中看到AWS S3 Assets。如果您没有看到AWS S3 Assets,请确保插件已安装到~/craft/plugins/awss3assets/中。

使用列表中的安装按钮安装AWS S3 Assets插件。在此阶段,您可能会收到以下错误

AWSS3AssetsPlugin无法找到自动加载文件

默认情况下,插件将在您的站点的~/vendor文件夹中查找自动加载文件。这是Composer的默认安装位置。如果您正在使用自定义Composer位置,并且尚未在Craft中包含您的autoload.php文件,那么在启用此插件之前您需要这样做。有关更多信息,请参阅Composer文档

在插件成功安装后,转到Craft控制面板中的设置。您应在插件子标题下看到AWS S3 Assets。在此处您将找到以下设置

存储桶区域

您在创建S3存储桶时创建的AWS区域,例如us-east-1。请确保区域与您的存储桶相同,否则您将遇到错误。

存储桶名称

您的AWS S3存储桶的名称。这是您创建存储桶时提供的名称,例如media.mywebsite.com。

存储桶路径(可选)

在您的S3存储桶中上传资源的路径。如果为空,则将资源上传到S3存储桶的根目录。

AWS密钥(可选)

您的IAM用户密钥。与该密钥关联的IAM用户必须有权读取/写入您的AWS S3存储桶。

AWS密钥(可选)

您的IAM用户密钥。与该密钥关联的IAM用户必须有权读取/写入您的AWS S3存储桶。

注意 如果您正在运行已获得S3存储桶访问权限的EC2实例上的Craft应用程序,则可以留空IAM用户凭据。

四(可选)

如果您希望从AWS CloudFront分发中提供资源,则需要创建一个指向CloudFront的资产源。

在Craft控制面板中导航到 设置 > 资产。点击 新建资产源。按照常规方式配置您的资产源,除了URL字段。在这里,您需要添加您CloudFront分布的URL。更多关于设置CloudFront分布的信息可以在文档中找到。