The AWS SDK for Java 1.x는 2024년 7월 31일부터 유지 관리 모드로 전환되었으며 2025년 12월 31일에 end-of-support
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon S3 버킷을 웹 사이트로 구성
웹 사이트로 작동하도록 Amazon S3 버킷을 구성할 수 있습니다. 이렇게 하려면 웹 사이트 구성을 설정해야 합니다.
참고
이 코드 예제에서는 사용자가 AWS SDK for Java 사용의 내용을 이해하고 개발을 위한 AWS 자격 증명 및 리전 설정의 정보를 사용하여 기본 AWS 자격 증명을 구성했다고 가정합니다.
버킷의 웹 사이트 구성 설정
Amazon S3버킷의 웹 사이트 구성을 설정하려면 구성을 설정할 버킷 이름과 버킷의 웹 사이트 구성이 포함된 BucketWebsiteConfiguration 객체를 사용하여 AmazonS3의 setWebsiteConfiguration
메서드를 호출합니다.
인덱스 문서 설정은 필수이며, 그 밖의 다른 파라미터는 선택적 파라미터입니다.
가져오기
import com.amazonaws.AmazonServiceException; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.BucketWebsiteConfiguration;
코드
String bucket_name, String index_doc, String error_doc) { BucketWebsiteConfiguration website_config = null; if (index_doc == null) { website_config = new BucketWebsiteConfiguration(); } else if (error_doc == null) { website_config = new BucketWebsiteConfiguration(index_doc); } else { website_config = new BucketWebsiteConfiguration(index_doc, error_doc); } final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withRegion(Regions.DEFAULT_REGION).build(); try { s3.setBucketWebsiteConfiguration(bucket_name, website_config); } catch (AmazonServiceException e) { System.out.format( "Failed to set website configuration for bucket '%s'!\n", bucket_name); System.err.println(e.getErrorMessage()); System.exit(1); }
참고
웹 사이트 구성을 설정해도 버킷의 액세스 권한을 수정되지 않습니다. 또한 파일이 웹에 표시되도록 하려면 버킷 내 파일에 대한 퍼블릭 읽기 액세스 권한을 허용하는 버킷 정책을 설정해야 합니다. 자세한 내용은 버킷 정책을 사용하여 Amazon S3 버킷에 대한 액세스 관리 단원을 참조하세요.
GitHub의 전체 예제
버킷의 웹 사이트 구성 가져오기
Amazon S3 버킷의 웹 사이트 구성을 가져오려면 구성을 가져올 버킷의 이름과 함께 AmazonS3의 getWebsiteConfiguration
메서드를 호출합니다.
구성이 BucketWebsiteConfiguration 객체로 반환됩니다. 버킷에 대한 웹 사이트 구성이 없으면 null
이 반환됩니다.
가져오기
import com.amazonaws.AmazonServiceException; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.BucketWebsiteConfiguration;
코드
final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withRegion(Regions.DEFAULT_REGION).build(); try { BucketWebsiteConfiguration config = s3.getBucketWebsiteConfiguration(bucket_name); if (config == null) { System.out.println("No website configuration found!"); } else { System.out.format("Index document: %s\n", config.getIndexDocumentSuffix()); System.out.format("Error document: %s\n", config.getErrorDocument()); } } catch (AmazonServiceException e) { System.err.println(e.getErrorMessage()); System.out.println("Failed to get website configuration!"); System.exit(1); }
GitHub의 전체 예제
버킷의 웹 사이트 구성 삭제
Amazon S3 버킷의 웹 사이트 구성을 삭제하려면 구성을 삭제할 버킷의 이름과 함께 AmazonS3의 deleteWebsiteConfiguration
메서드를 호출합니다.
가져오기
import com.amazonaws.AmazonServiceException; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder;
코드
final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withRegion(Regions.DEFAULT_REGION).build(); try { s3.deleteBucketWebsiteConfiguration(bucket_name); } catch (AmazonServiceException e) { System.err.println(e.getErrorMessage()); System.out.println("Failed to delete website configuration!"); System.exit(1); }
GitHub의 전체 예제
추가 정보
-
Amazon S3 API 참조에서 버킷 웹사이트 추가
-
Amazon S3 API 참조에서 버킷 웹사이트 가져오기
-
Amazon S3 API 참조에서 버킷 웹사이트 삭제