La AWS SDK for Java versione 1.x è entrata in modalità manutenzione il 31 luglio 2024 e sarà disponibile il 31 end-of-support
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configurazione di unAmazon S3Bucket come sito web
È possibile configurare unAmazon S3per comportarsi come un sito Web. Per fare ciò, è necessario impostare la configurazione del sito Web.
Nota
Questi esempi di codice presuppongono che tu comprenda il materiale inUtilizzo diAWS SDK for Javae hanno configurato il valore predefinitoAWScredenziali che utilizzano le informazioni inConfigurazioneAWSCredenziali e regione per lo sviluppo.
Impostare la configurazione del sito Web di un bucket
Per impostare unAmazon S3configurazione del sito web di bucket, chiama AmazonS3setWebsiteConfiguration
metodo con il nome del bucket per impostare la configurazione e aBucketWebsiteConfigurationoggetto contenente la configurazione del sito Web del bucket.
L'impostazione di un documento indice ènecessario; tutti gli altri parametri sono opzionali.
Importazioni
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;
Codice
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); }
Nota
L'impostazione di una configurazione del sito Web non modifica le autorizzazioni di accesso per il bucket. Per rendere visibili i tuoi file sul Web, dovrai anche impostare unpolicy di bucketche consente l'accesso pubblico in lettura ai file nel bucket. Per ulteriori informazioni, consultaGestione degli accessi aAmazon S3Periodi di bucket che utilizzano policy di bu.
Vedi l'esempio completo
Ottieni la configurazione del sito Web di un Bucket
Per ottenere unAmazon S3configurazione del sito web di bucket, chiama AmazonS3getWebsiteConfiguration
con il nome del bucket per il quale recuperare la configurazione.
La configurazione verrà restituita come aBucketWebsiteConfigurationoggetto. Se non esiste una configurazione del sito Web per il bucket, alloranull
verrà restituito.
Importazioni
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;
Codice
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); }
Vedi l'esempio completo
Eliminare la configurazione del sito Web di un bucket
Per eliminare unAmazon S3configurazione del sito web di bucket, chiama AmazonS3deleteWebsiteConfiguration
con il nome del bucket da cui eliminare la configurazione.
Importazioni
import com.amazonaws.AmazonServiceException; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder;
Codice
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); }
Vedi l'esempio completo
Ulteriori informazioni
-
PUT Bucket websitenellaAmazon S3Documentazione di riferimento API
-
GET Bucket websitenellaAmazon S3Documentazione di riferimento API
-
DELETE Bucket websitenellaAmazon S3Documentazione di riferimento API