使用 Amazon S3 存储桶作为具有 AWS SDK for PHP 版本 3 的静态 Web 主机 - AWS SDK for PHP

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Amazon S3 存储桶作为具有 AWS SDK for PHP 版本 3 的静态 Web 主机

您可以在 Amazon S3 上托管静态网站。要了解更多信息,请参阅在 Amazon S3 上托管静态网站

以下示例演示如何:

AWS SDK for PHP版本 3 的所有示例代码都可以在此处找到 GitHub

凭证

运行示例代码之前,请配置您的 AWS 凭证。请参阅 AWS SDK for PHP 版本 3 的凭证

获取、设置和删除存储桶的网站配置。

导入

require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\S3\S3Client;

示例代码

$s3Client = new S3Client([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2006-03-01' ]); // Retrieving the Bucket Website Configuration $bucket = 'my-s3-bucket'; try { $resp = $s3Client->getBucketWebsite([ 'Bucket' => $bucket ]); echo "Succeed in retrieving website configuration for bucket: " . $bucket . "\n"; } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; } // Setting a Bucket Website Configuration $params = [ 'Bucket' => $bucket, 'WebsiteConfiguration' => [ 'ErrorDocument' => [ 'Key' => 'foo', ], 'IndexDocument' => [ 'Suffix' => 'bar', ], ] ]; try { $resp = $s3Client->putBucketWebsite($params); echo "Succeed in setting bucket website configuration.\n"; } catch (AwsException $e) { // Display error message echo $e->getMessage(); echo "\n"; } // Deleting a Bucket Website Configuration try { $resp = $s3Client->deleteBucketWebsite([ 'Bucket' => $bucket ]); echo "Succeed in deleting policy for bucket: " . $bucket . "\n"; } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }