Anda dapat mengonfigurasi bucket untuk hosting situs web statis dan menetapkan aturan pengalihan (RoutingRule) guna mendukung pengembalian ke sumber berbasis mirroring. Setelah hosting situs web statis diaktifkan, permintaan ke situs tersebut setara dengan permintaan ke bucket. Anda juga dapat mengonfigurasi pengalihan otomatis ke halaman indeks dan halaman error tertentu. Aturan pengalihan untuk pengembalian ke sumber berbasis mirroring memungkinkan migrasi data ke Object Storage Service (OSS) secara mulus.
Catatan
Topik ini menggunakan titik akhir publik wilayah China (Hangzhou). Untuk mengakses OSS dari layanan Alibaba Cloud lainnya di wilayah yang sama, gunakan titik akhir internal. Untuk informasi selengkapnya mengenai wilayah dan titik akhir yang didukung, lihat Wilayah dan titik akhir.
Pada topik ini, kredensial akses diperoleh dari variabel lingkungan. Untuk informasi selengkapnya tentang cara mengonfigurasi kredensial akses, lihat Konfigurasi kredensial akses.
Pada topik ini, instans OSSClient dibuat menggunakan titik akhir OSS. Jika Anda ingin membuat instans OSSClient menggunakan nama domain kustom atau Security Token Service (STS), lihat Contoh konfigurasi untuk skenario umum.
Untuk mengonfigurasi hosting situs web statis atau pengembalian ke sumber berbasis mirroring, Anda harus memiliki izin
oss:PutBucketWebsite. Untuk mengambil konfigurasi hosting situs web statis atau pengembalian ke sumber berbasis mirroring, Anda harus memiliki izinoss:GetBucketWebsite. Untuk menghapus konfigurasi tersebut, Anda harus memiliki izinoss:DeleteBucketWebsite. Untuk informasi selengkapnya, lihat Berikan kebijakan akses kustom kepada Pengguna RAM.
Hosting situs web statis
Konfigurasikan hosting situs web statis
Kode berikut menunjukkan cara mengonfigurasi hosting situs web statis:
import com.aliyun.oss.*; import com.aliyun.oss.common.auth.*; import com.aliyun.oss.common.comm.SignVersion; import com.aliyun.oss.model.SetBucketWebsiteRequest; public class Demo { public static void main(String[] args) throws Exception { // Titik akhir China (Hangzhou) digunakan sebagai contoh. Tentukan Titik akhir yang sebenarnya. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; // Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel. EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // Tentukan nama bucket. Misalnya, examplebucket. String bucketName = "examplebucket"; // Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel wilayah menjadi cn-hangzhou. String region = "cn-hangzhou"; // Buat instans OSSClient. // Saat instans OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber dayanya. ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration(); clientBuilderConfiguration.setSignatureVersion(SignVersion.V4); OSS ossClient = OSSClientBuilder.create() .endpoint(endpoint) .credentialsProvider(credentialsProvider) .clientConfiguration(clientBuilderConfiguration) .region(region) .build(); try { // Tentukan nama bucket. SetBucketWebsiteRequest request = new SetBucketWebsiteRequest(bucketName); // Tetapkan halaman utama default untuk hosting situs web statis. request.setIndexDocument("index.html"); // Tetapkan halaman 404 default untuk hosting situs web statis. request.setErrorDocument("error.html"); ossClient.setBucketWebsite(request); } catch (OSSException oe) { System.out.println("Terjadi OSSException, yang berarti permintaan Anda berhasil mencapai OSS, " + "tetapi ditolak dengan tanggapan error karena suatu alasan."); System.out.println("Pesan Error:" + oe.getErrorMessage()); System.out.println("Kode Error:" + oe.getErrorCode()); System.out.println("ID Permintaan:" + oe.getRequestId()); System.out.println("Host ID:" + oe.getHostId()); } catch (ClientException ce) { System.out.println("Terjadi ClientException, yang berarti klien mengalami " + "masalah internal serius saat mencoba berkomunikasi dengan OSS, " + "seperti tidak dapat mengakses jaringan."); System.out.println("Pesan Error:" + ce.getMessage()); } finally { if (ossClient != null) { ossClient.shutdown(); } } } }Lihat konfigurasi hosting situs web statis
Kode berikut menunjukkan cara melihat konfigurasi hosting situs web statis:
import com.aliyun.oss.*; import com.aliyun.oss.common.auth.*; import com.aliyun.oss.common.comm.SignVersion; import com.aliyun.oss.model.BucketWebsiteResult; public class Demo { public static void main(String[] args) throws Exception { // Titik akhir China (Hangzhou) digunakan sebagai contoh. Tentukan Titik akhir yang sebenarnya. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; // Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel. EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // Tentukan nama bucket. Misalnya, examplebucket. String bucketName = "examplebucket"; // Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel wilayah menjadi cn-hangzhou. String region = "cn-hangzhou"; // Buat instans OSSClient. // Saat instans OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber dayanya. ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration(); clientBuilderConfiguration.setSignatureVersion(SignVersion.V4); OSS ossClient = OSSClientBuilder.create() .endpoint(endpoint) .credentialsProvider(credentialsProvider) .clientConfiguration(clientBuilderConfiguration) .region(region) .build(); try { // Tentukan nama bucket. BucketWebsiteResult result = ossClient.getBucketWebsite(bucketName); // Lihat halaman utama default dan halaman 404 default dari konfigurasi hosting situs web statis. System.out.println(result.getIndexDocument()); System.out.println(result.getErrorDocument()); } catch (OSSException oe) { System.out.println("Terjadi OSSException, yang berarti permintaan Anda berhasil mencapai OSS, " + "tetapi ditolak dengan tanggapan error karena suatu alasan."); System.out.println("Pesan Error:" + oe.getErrorMessage()); System.out.println("Kode Error:" + oe.getErrorCode()); System.out.println("ID Permintaan:" + oe.getRequestId()); System.out.println("Host ID:" + oe.getHostId()); } catch (ClientException ce) { System.out.println("Terjadi ClientException, yang berarti klien mengalami " + "masalah internal serius saat mencoba berkomunikasi dengan OSS, " + "seperti tidak dapat mengakses jaringan."); System.out.println("Pesan Error:" + ce.getMessage()); } finally { if (ossClient != null) { ossClient.shutdown(); } } } }Hapus konfigurasi hosting situs web statis
Kode berikut menunjukkan cara menghapus konfigurasi hosting situs web statis:
import com.aliyun.oss.*; import com.aliyun.oss.common.auth.*; import com.aliyun.oss.common.comm.SignVersion; public class Demo { public static void main(String[] args) throws Exception { // Titik akhir China (Hangzhou) digunakan sebagai contoh. Tentukan Titik akhir yang sebenarnya. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; // Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel. EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // Tentukan nama bucket. Misalnya, examplebucket. String bucketName = "examplebucket"; // Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel wilayah menjadi cn-hangzhou. String region = "cn-hangzhou"; // Buat instans OSSClient. // Saat instans OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber dayanya. ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration(); clientBuilderConfiguration.setSignatureVersion(SignVersion.V4); OSS ossClient = OSSClientBuilder.create() .endpoint(endpoint) .credentialsProvider(credentialsProvider) .clientConfiguration(clientBuilderConfiguration) .region(region) .build(); try { // Tentukan nama bucket. ossClient.deleteBucketWebsite(bucketName); } catch (OSSException oe) { System.out.println("Terjadi OSSException, yang berarti permintaan Anda berhasil mencapai OSS, " + "tetapi ditolak dengan tanggapan error karena suatu alasan."); System.out.println("Pesan Error:" + oe.getErrorMessage()); System.out.println("Kode Error:" + oe.getErrorCode()); System.out.println("ID Permintaan:" + oe.getRequestId()); System.out.println("Host ID:" + oe.getHostId()); } catch (ClientException ce) { System.out.println("Terjadi ClientException, yang berarti klien mengalami " + "masalah internal serius saat mencoba berkomunikasi dengan OSS, " + "seperti tidak dapat mengakses jaringan."); System.out.println("Pesan Error:" + ce.getMessage()); } finally { if (ossClient != null) { ossClient.shutdown(); } } } }
Pengembalian ke sumber berbasis mirroring
Pengembalian ke sumber berbasis mirroring terutama digunakan untuk migrasi data ke OSS secara mulus. Misalnya, layanan Anda mungkin berjalan di server origin milik Anda sendiri atau di produk cloud lainnya. Jika Anda ingin memigrasikan layanan tersebut ke OSS demi pengembangan bisnis, Anda harus memastikan layanan tetap berjalan selama proses migrasi. Selama migrasi, Anda dapat menggunakan aturan pengembalian ke sumber berbasis mirroring untuk mengambil data yang belum dimigrasikan ke OSS, sehingga layanan Anda tetap beroperasi sebagaimana mestinya.
Konfigurasikan pengembalian ke sumber berbasis mirroring
Sebagai contoh, ketika peminta mengakses file yang tidak ada di bucket tujuan, Anda dapat menentukan kondisi kembali-ke-asal dan URL asal untuk mengambil file objek dari server origin. Misalnya, Anda memiliki bucket bernama examplebucket di wilayah China (Hangzhou). Jika peminta mencoba mengakses file yang tidak ada di direktori examplefolder dalam direktori root bucket tersebut, Anda ingin peminta tersebut dapat mengambil file objek dari direktori examplefolder di situs https://www.example.com/.
Kode berikut menunjukkan cara mengonfigurasi aturan pengembalian ke sumber berbasis mirroring untuk skenario di atas:
import com.aliyun.oss.*; import com.aliyun.oss.common.auth.*; import com.aliyun.oss.common.comm.SignVersion; import com.aliyun.oss.model.RoutingRule; import com.aliyun.oss.model.SetBucketWebsiteRequest; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class Demo { public static void main(String[] args) throws Exception { // Titik akhir China (Hangzhou) digunakan sebagai contoh. Tentukan Titik akhir yang sebenarnya. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; // Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel. EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // Tentukan nama bucket. Misalnya, examplebucket. String bucketName = "examplebucket"; // Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel wilayah menjadi cn-hangzhou. String region = "cn-hangzhou"; // Buat instans OSSClient. // Saat instans OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber dayanya. ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration(); clientBuilderConfiguration.setSignatureVersion(SignVersion.V4); OSS ossClient = OSSClientBuilder.create() .endpoint(endpoint) .credentialsProvider(credentialsProvider) .clientConfiguration(clientBuilderConfiguration) .region(region) .build(); try { SetBucketWebsiteRequest request = new SetBucketWebsiteRequest(bucketName); // Perilaku saat mengakses objek yang tidak ada dan namanya tidak diakhiri dengan garis miring (/). Ini berlaku setelah halaman utama default ditetapkan. //request.setSubDirType(null); // Menentukan apakah akan mengalihkan ke halaman utama default subdirektori saat subdirektori diakses. //request.setSupportSubDir(false); List<RoutingRule> routingRules = new ArrayList<RoutingRule>(); RoutingRule rule = new RoutingRule(); rule.setNumber(1); // Hanya objek dengan awalan ini yang dapat sesuai dengan aturan ini. rule.getCondition().setKeyPrefixEquals("examplebucket"); // Aturan ini hanya cocok jika kode status HTTP 404 dikembalikan untuk permintaan ke objek tertentu. rule.getCondition().setHttpErrorCodeReturnedEquals(404); // Tentukan tipe redirect. rule.getRedirect().setRedirectType(RoutingRule.RedirectType.Mirror); // Tentukan URL asal untuk pengembalian ke sumber berbasis mirroring. Misalnya, https://www.example.com/. rule.getRedirect().setMirrorURL("<yourMirrorURL>"); //rule.getRedirect().setMirrorRole("AliyunOSSMirrorDefaultRole"); // Menentukan apakah parameter permintaan disertakan saat aturan pengalihan atau pengembalian ke sumber berbasis mirroring dieksekusi. rule.getRedirect().setPassQueryString(true); // Parameter ini memiliki fungsi yang sama dengan PassQueryString tetapi memiliki prioritas lebih tinggi. Parameter ini hanya berlaku saat RedirectType diatur ke Mirror. rule.getRedirect().setMirrorPassQueryString(true); // Tentukan kode status yang dikembalikan untuk pengalihan. Parameter ini hanya berlaku saat RedirectType diatur ke External atau AliCDN. //rule.getRedirect().setHttpRedirectCode(302); // Tentukan nama domain untuk pengalihan. Nama domain harus sesuai dengan spesifikasi nama domain. //rule.getRedirect().setHostName("oss.aliyuncs.com"); // Tentukan protokol untuk pengalihan. Parameter ini hanya berlaku saat RedirectType diatur ke External atau AliCDN. //rule.getRedirect().setProtocol(RoutingRule.Protocol.Https); // Selama pengalihan, nama objek diganti dengan nilai ReplaceKeyWith. ReplaceKeyWith mendukung variabel. //rule.getRedirect().setReplaceKeyWith("${key}.jpg"); // Jika parameter ini diatur ke true, awalan nama objek diganti dengan nilai ReplaceKeyPrefixWith. rule.getRedirect().setEnableReplacePrefix(true); // Selama pengalihan, awalan nama objek diganti dengan nilai ini. rule.getRedirect().setReplaceKeyPrefixWith("examplebucket"); // Menentukan apakah akan memeriksa hash MD5 dari isi kembali-ke-asal. Parameter ini hanya berlaku saat RedirectType diatur ke Mirror. rule.getRedirect().setMirrorCheckMd5(true); RoutingRule.MirrorHeaders mirrorHeaders = new RoutingRule.MirrorHeaders(); // Menentukan apakah akan meneruskan header selain yang berikut ke server origin. Parameter ini hanya berlaku saat RedirectType diatur ke Mirror. mirrorHeaders.setPassAll(false); List passes = new ArrayList<String>(); passes.add("cache-control"); // Teruskan header yang ditentukan ke server origin. Parameter ini hanya berlaku saat RedirectType diatur ke Mirror. mirrorHeaders.setPass(passes); List removes = new ArrayList<String>(); removes.add("content-type"); // Larang penerusan header tertentu ke server origin. Parameter ini hanya berlaku saat RedirectType diatur ke Mirror. mirrorHeaders.setRemove(removes); List sets = new ArrayList<Map<String, String>>(); Map header1 = new HashMap<String, String>(); header1.put("Key", "key1"); header1.put("Value", "value1"); Map header2 = new HashMap<String, String>(); header2.put("Key", "key2"); header2.put("Value", "value2"); sets.add(header1); sets.add(header2); // Tetapkan header yang akan diteruskan ke server origin. Header ini ditetapkan untuk permintaan kembali-ke-asal, terlepas dari apakah header tersebut termasuk dalam permintaan asli. mirrorHeaders.setSet(sets); // Tentukan header yang disertakan dalam permintaan kembali-ke-asal. Parameter ini hanya berlaku saat RedirectType diatur ke Mirror. rule.getRedirect().setMirrorHeaders(mirrorHeaders); routingRules.add(rule); request.setRoutingRules(routingRules); ossClient.setBucketWebsite(request); } catch (OSSException oe) { System.out.println("Terjadi OSSException, yang berarti permintaan Anda berhasil mencapai OSS, " + "tetapi ditolak dengan tanggapan error karena suatu alasan."); System.out.println("Pesan Error:" + oe.getErrorMessage()); System.out.println("Kode Error:" + oe.getErrorCode()); System.out.println("ID Permintaan:" + oe.getRequestId()); System.out.println("Host ID:" + oe.getHostId()); } catch (ClientException ce) { System.out.println("Terjadi ClientException, yang berarti klien mengalami " + "masalah internal serius saat mencoba berkomunikasi dengan OSS, " + "seperti tidak dapat mengakses jaringan."); System.out.println("Pesan Error:" + ce.getMessage()); } finally { if (ossClient != null) { ossClient.shutdown(); } } } }Ambil konfigurasi pengembalian ke sumber berbasis mirroring
Kode berikut menunjukkan cara mengambil konfigurasi pengembalian ke sumber berbasis mirroring:
import com.aliyun.oss.*; import com.aliyun.oss.common.auth.*; import com.aliyun.oss.common.comm.SignVersion; import com.aliyun.oss.model.BucketWebsiteResult; public class Demo { public static void main(String[] args) throws Exception { // Titik akhir China (Hangzhou) digunakan sebagai contoh. Tentukan Titik akhir yang sebenarnya. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; // Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel. EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // Tentukan nama bucket. Misalnya, examplebucket. String bucketName = "examplebucket"; // Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel wilayah menjadi cn-hangzhou. String region = "cn-hangzhou"; // Buat instans OSSClient. // Saat instans OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber dayanya. ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration(); clientBuilderConfiguration.setSignatureVersion(SignVersion.V4); OSS ossClient = OSSClientBuilder.create() .endpoint(endpoint) .credentialsProvider(credentialsProvider) .clientConfiguration(clientBuilderConfiguration) .region(region) .build(); try { BucketWebsiteResult result = ossClient.getBucketWebsite(bucketName); result.getSubDirType(); // Dapatkan nomor urut aturan pengalihan atau pengembalian ke sumber berbasis mirroring yang sesuai dan dieksekusi. System.out.println(result.getRoutingRules().get(0).getNumber()); // Dapatkan awalan yang sesuai dengan aturan tersebut. System.out.println(result.getRoutingRules().get(0).getCondition().getKeyPrefixEquals()); // Dapatkan kode status HTTP. System.out.println(result.getRoutingRules().get(0).getCondition().getHttpErrorCodeReturnedEquals()); // Dapatkan akhiran yang sesuai dengan aturan tersebut. System.out.println(result.getRoutingRules().get(0).getCondition().getKeySuffixEquals()); // Dapatkan tipe redirect. System.out.println(result.getRoutingRules().get(0).getRedirect().getRedirectType()); // Dapatkan parameter permintaan yang dibawa. System.out.println(result.getRoutingRules().get(0).getRedirect().getMirrorPassQueryString()); // Dapatkan URL asal untuk pengembalian ke sumber berbasis mirroring. System.out.println(result.getRoutingRules().get(0).getRedirect().getMirrorURL()); // Dapatkan kode status yang dikembalikan untuk pengalihan. System.out.println(result.getRoutingRules().get(0).getRedirect().getHttpRedirectCode()); // Dapatkan header yang ditentukan untuk diteruskan. System.out.println(result.getRoutingRules().get(0).getRedirect().getMirrorHeaders().getPass().get(0)); // Dapatkan header yang ditentukan yang dilarang untuk diteruskan. System.out.println(result.getRoutingRules().get(0).getRedirect().getMirrorHeaders().getRemove().get(0)); // Dapatkan protokol untuk pengalihan. System.out.println(result.getRoutingRules().get(0).getRedirect().getProtocol()); // Dapatkan nama domain untuk pengalihan. System.out.println(result.getRoutingRules().get(0).getRedirect().getHostName()); // Dapatkan nilai untuk mengganti awalan nama objek selama pengalihan. Jika awalan kosong, string ini disisipkan di awal nama objek. System.out.println(result.getRoutingRules().get(0).getRedirect().getReplaceKeyPrefixWith()); // Dapatkan nilai pengganti untuk nama objek yang ditentukan oleh ReplaceKeyWith selama pengalihan. ReplaceKeyWith mendukung variabel. System.out.println(result.getRoutingRules().get(0).getRedirect().getReplaceKeyWith()); // Dapatkan kode status yang dikembalikan untuk pengalihan. System.out.println(result.getRoutingRules().get(0).getRedirect().getHttpRedirectCode()); } catch (OSSException oe) { System.out.println("Terjadi OSSException, yang berarti permintaan Anda berhasil mencapai OSS, " + "tetapi ditolak dengan tanggapan error karena suatu alasan."); System.out.println("Pesan Error:" + oe.getErrorMessage()); System.out.println("Kode Error:" + oe.getErrorCode()); System.out.println("ID Permintaan:" + oe.getRequestId()); System.out.println("Host ID:" + oe.getHostId()); } catch (ClientException ce) { System.out.println("Terjadi ClientException, yang berarti klien mengalami " + "masalah internal serius saat mencoba berkomunikasi dengan OSS, " + "seperti tidak dapat mengakses jaringan."); System.out.println("Pesan Error:" + ce.getMessage()); } finally { if (ossClient != null) { ossClient.shutdown(); } } } }Hapus konfigurasi pengembalian ke sumber berbasis mirroring
Kode berikut menunjukkan cara menghapus konfigurasi pengembalian ke sumber berbasis mirroring:
import com.aliyun.oss.*; import com.aliyun.oss.common.auth.*; import com.aliyun.oss.common.comm.SignVersion; public class Demo { public static void main(String[] args) throws Exception { // Titik akhir China (Hangzhou) digunakan sebagai contoh. Tentukan Titik akhir yang sebenarnya. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; // Peroleh kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel. EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // Tentukan nama bucket. Misalnya, examplebucket. String bucketName = "examplebucket"; // Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel wilayah menjadi cn-hangzhou. String region = "cn-hangzhou"; // Buat instans OSSClient. // Saat instans OSSClient tidak lagi diperlukan, panggil metode shutdown untuk melepaskan sumber dayanya. ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration(); clientBuilderConfiguration.setSignatureVersion(SignVersion.V4); OSS ossClient = OSSClientBuilder.create() .endpoint(endpoint) .credentialsProvider(credentialsProvider) .clientConfiguration(clientBuilderConfiguration) .region(region) .build(); try { // Tentukan nama bucket. ossClient.deleteBucketWebsite(bucketName); } catch (OSSException oe) { System.out.println("Terjadi OSSException, yang berarti permintaan Anda berhasil mencapai OSS, " + "tetapi ditolak dengan tanggapan error karena suatu alasan."); System.out.println("Pesan Error:" + oe.getErrorMessage()); System.out.println("Kode Error:" + oe.getErrorCode()); System.out.println("ID Permintaan:" + oe.getRequestId()); System.out.println("Host ID:" + oe.getHostId()); } catch (ClientException ce) { System.out.println("Terjadi ClientException, yang berarti klien mengalami " + "masalah internal serius saat mencoba berkomunikasi dengan OSS, " + "seperti tidak dapat mengakses jaringan."); System.out.println("Pesan Error:" + ce.getMessage()); } finally { if (ossClient != null) { ossClient.shutdown(); } } } }
Referensi
Untuk kode contoh lengkap tentang hosting situs web statis dan pengembalian ke sumber berbasis mirroring, lihat contoh GitHub.
Untuk informasi selengkapnya tentang operasi API yang digunakan untuk mengonfigurasi hosting situs web statis atau pengembalian ke sumber berbasis mirroring, lihat PutBucketWebsite.
Untuk informasi selengkapnya tentang operasi API yang digunakan untuk mengambil konfigurasi hosting situs web statis atau pengembalian ke sumber berbasis mirroring, lihat GetBucketWebsite.
Untuk informasi selengkapnya tentang operasi API yang digunakan untuk menghapus konfigurasi hosting situs web statis atau pengembalian ke sumber berbasis mirroring, lihat DeleteBucketWebsite.