Konfigurieren einesAmazon S3Bucket als Website - AWS SDK for Java 1.x

Version AWS SDK for Java 1.x wurde am 31. Juli 2024 in den Wartungsmodus versetzt und wird end-of-supportam 31. Dezember 2025 verfügbar sein. Wir empfehlen Ihnen, auf den zu migrieren AWS SDK for Java 2.x, um weiterhin neue Funktionen, Verfügbarkeitsverbesserungen und Sicherheitsupdates zu erhalten.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfigurieren einesAmazon S3Bucket als Website

Sie können einen Amazon S3-Bucket so konfigurieren, dass er sich wie eine Website verhält. Hierzu müssen Sie die Website-Konfiguration festlegen.

Anmerkung

Diese Codebeispiele gehen davon aus, dass Sie das Material in verstehenVerwendung derAWS SDK for Javaund haben default konfiguriertAWSAnmeldeinformationen, die die Informationen in verwendenEinrichtenAWSAnmeldeinformationen und Region für die Entwicklungaus.

Festlegen der Website-Konfiguration eines Buckets

So legen Sie einAmazon S3Bucket Website-Konfiguration, rufen Sie die AmazonS3's ansetWebsiteConfigurationMethode mit dem Bucket-Namen, für den die Konfiguration festgelegt werden soll, und einemBucketWebSiteConfigurationObjekt, das die Website-Konfiguration des Buckets enthält.

Das Festlegen eines Index-Dokuments ist erforderlich. Alle anderen Parameter sind optional.

Importe

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;

Code

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); }
Anmerkung

Beim Festlegen einer Website-Konfiguration werden die Zugriffsberechtigungen für den Bucket nicht geändert. Um die enthaltenen Dateien im Internet sichtbar zu machen, müssen Sie zusätzlich eine Bucket-Richtlinie festlegen, durch die der öffentliche Lesezugriff für die Dateien in dem Bucket ermöglicht wird. Weitere Informationen finden Sie unterVerwalten des Zugriffs aufAmazon S3Buckets Verwenden von -Bucket-Richtlinienaus.

Auf GitHub finden Sie ein vollständiges Beispiel.

Abruf der Website-Konfiguration eines Buckets

Um einen zu bekommenAmazon S3Bucket Website-Konfiguration, rufen Sie die AmazonS3's angetWebsiteConfiguration-Methode mit dem Namen des Buckets, für den Sie die Konfiguration abrufen möchten.

Die Konfiguration wird als BucketWebsiteConfiguration-Objekt zurückgegeben. Wenn keine Website-Konfiguration für den Bucket vorhanden ist, wird null zurückgegeben.

Importe

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;

Code

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); }

Auf GitHub finden Sie ein vollständiges Beispiel.

Löschen der Website-Konfiguration eines Buckets

So löschen Sie einenAmazon S3Bucket Website-Konfiguration, rufen Sie die AmazonS3's andeleteWebsiteConfiguration-Methode mit dem Namen des Buckets, aus dem Sie die Konfiguration löschen möchten.

Importe

import com.amazonaws.AmazonServiceException; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder;

Code

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); }

Auf GitHub finden Sie ein vollständiges Beispiel.

Weitere Informationen