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

AWS SDK for Java로 웹 사이트 관리

다음 예제는 AWS SDK for Java를 사용하여 버킷에 대한 웹 사이트 구성을 관리하는 방법을 보여줍니다. 버킷에 웹 사이트 구성을 추가하려면 버킷 이름 및 웹 사이트 구성을 제공해야 합니다. 웹 사이트 구성에는 인덱스 문서가 포함되어 있어야 하고 선택적 오류 문서를 포함할 수 있습니다. 이러한 문서는 버킷에 이미 있어야 합니다. 자세한 내용은 PUT 버킷 웹 사이트를 참조하십시오. Amazon S3 웹 사이트 기능에 대한 자세한 내용은 Amazon S3 정적 웹 사이트 호스팅을 참조하십시오.

다음 예제에서는 AWS SDK for Java를 사용하여 버킷에 웹 사이트 구성을 추가하고, 구성을 검색 및 인쇄하고, 구성을 삭제하고, 삭제를 확인합니다. 실제 예제를 작성하여 테스트하는 방법에 대한 자세한 내용은 Amazon S3 Java 코드 예제 테스트 단원을 참조하십시오.

import java.io.IOException; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.BucketWebsiteConfiguration; public class WebsiteConfiguration { public static void main(String[] args) throws IOException { String clientRegion = "*** Client region ***"; String bucketName = "*** Bucket name ***"; String indexDocName = "*** Index document name ***"; String errorDocName = "*** Error document name ***"; try { AmazonS3 s3Client = AmazonS3ClientBuilder.standard() .withRegion(clientRegion) .withCredentials(new ProfileCredentialsProvider()) .build(); // Print the existing website configuration, if it exists. printWebsiteConfig(s3Client, bucketName); // Set the new website configuration. s3Client.setBucketWebsiteConfiguration(bucketName, new BucketWebsiteConfiguration(indexDocName, errorDocName)); // Verify that the configuration was set properly by printing it. printWebsiteConfig(s3Client, bucketName); // Delete the website configuration. s3Client.deleteBucketWebsiteConfiguration(bucketName); // Verify that the website configuration was deleted by printing it. printWebsiteConfig(s3Client, bucketName); } catch(AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it, so it returned an error response. e.printStackTrace(); } catch(SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } private static void printWebsiteConfig(AmazonS3 s3Client, String bucketName) { System.out.println("Website configuration: "); BucketWebsiteConfiguration bucketWebsiteConfig = s3Client.getBucketWebsiteConfiguration(bucketName); if (bucketWebsiteConfig == null) { System.out.println("No website config."); } else { System.out.println("Index doc: " + bucketWebsiteConfig.getIndexDocumentSuffix()); System.out.println("Error doc: " + bucketWebsiteConfig.getErrorDocument()); } } }