메뉴
Amazon Simple Storage Service
개발자 안내서 (API Version 2006-03-01)

PHP용 AWS SDK로 웹 사이트 관리

본 주제에서는 PHP용 AWS SDK의 클래스로 웹 사이트 호스팅용 Amazon S3 버킷을 구성하고 관리하는 방법을 살펴봅니다. Amazon S3 웹 사이트 기능에 대한 자세한 내용은 Amazon S3 정적 웹 사이트 호스팅을 참조하십시오.

참고

여기서는 이미 PHP용 AWS SDK 사용 및 PHP 예제 실행에 대한 설명에 따라 PHP용 AWS SDK가 올바르게 설치되어 있다고 가정합니다.

다음 작업은 PHP SDK 클래스로 웹 사이트 호스팅용 Amazon S3 버킷을 구성하고 관리하는 방법을 설명합니다.

웹 사이트 호스팅용 버킷 구성

1

Aws\S3\S3Client 클래스의 factory() 메서드를 사용하여 Amazon S3 클라이언트의 인스턴스를 만듭니다.

2

버킷을 웹 사이트로 구성하려면 Aws\S3\S3Client::putBucketWebsite() 메서드를 실행합니다. 인덱스 문서와 오류 문서 이름을 포함한 버킷 이름과 웹 사이트 구성 정보를 제공해야 합니다. 이러한 문서 이름을 제공하지 않으면 이 메서드에서 index.htmlerror.html의 기본 이름을 웹 사이트 구성에 추가합니다. 버킷에 이 문서 이름이 존재하는지 확인합니다.

3

기존 버킷 웹 사이트 구성을 검색하려면 Aws\S3\S3Client::getBucketWebsite() 메서드를 실행합니다.

4

버킷에서 웹 사이트 구성을 삭제하려면 파라미터로 버킷 이름을 전달해 Aws\S3\S3Client::deleteBucketWebsite() 메서드를 실행합니다. 웹 사이트 구성을 삭제하고 나면 더 이상 웹 사이트 엔드포인트에서 버킷에 액세스할 수 없습니다.

다음 PHP 코드로 앞에서 설명한 작업에 대한 예를 살펴봅니다.

Copy
use Aws\S3\S3Client; $bucket = '*** Your Bucket Name ***'; // 1. Instantiate the client. $s3 = S3Client::factory(); // 2. Add website configuration. $result = $s3->putBucketWebsite(array( 'Bucket' => $bucket, 'IndexDocument' => array('Suffix' => 'index.html'), 'ErrorDocument' => array('Key' => 'error.html'), )); // 3. Retrieve website configuration. $result = $s3->getBucketWebsite(array( 'Bucket' => $bucket, )); echo $result->getPath('IndexDocument/Suffix'); // 4.) Delete website configuration. $result = $s3->deleteBucketWebsite(array( 'Bucket' => $bucket, ));

예 웹 사이트 호스팅용 Amazon S3 버킷 구성

다음 PHP 코드로 우선 지정된 버킷에 웹 사이트 구성을 추가하는 예를 살펴봅니다. create_website_config 메서드는 인덱스 문서와 오류 문서 이름을 명시적으로 제공합니다. 또한, 샘플이 웹 사이트 구성을 검색해 응답을 인쇄합니다. Amazon S3 웹 사이트 기능에 대한 자세한 내용은 Amazon S3 정적 웹 사이트 호스팅을 참조하십시오.

작업 샘플의 생성과 시험 방법에 대한 자세한 설명은 PHP용 AWS SDK 사용 및 PHP 예제 실행을 참조하십시오.

Copy
<?php // Include the AWS SDK using the Composer autoloader. require 'vendor/autoload.php'; use Aws\S3\S3Client; $bucket = '*** Your Bucket Name ***'; // Instantiate the client. $s3 = S3Client::factory(); // 1.) Add website configuration. $result = $s3->putBucketWebsite(array( 'Bucket' => $bucket, 'IndexDocument' => array('Suffix' => 'index.html'), 'ErrorDocument' => array('Key' => 'error.html'), )); // 2.) Retrieve website configuration. $result = $s3->getBucketWebsite(array( 'Bucket' => $bucket, )); echo $result->getPath('IndexDocument/Suffix'); // 3.) Delete website configuration. $result = $s3->deleteBucketWebsite(array( 'Bucket' => $bucket, ));

관련 리소스

이 페이지에서: