AWS SDK for PHP
Developer Guide

Using an Amazon S3 Bucket as a Static Web Host with AWS SDK for PHP Version 3

You can host a static website on Amazon S3. To learn more, see Hosting a Static Website on S3.

The following example shows how to:

All the example code for the AWS SDK for PHP Version 3 is available here on GitHub.

Credentials

Before running the example code, configure your AWS credentials. See Credentials for the AWS SDK for PHP Version 3.

Get, Set, and Delete the Website Configuration for a Bucket

Imports

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

Sample Code

// Create a 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"; }