All Products
Search
Document Center

Object Storage Service:"Koneksi ke XXXX ditolak" error saat menggunakan OSS Java SDK

Last Updated:Mar 20, 2026

Saat menggunakan OSS Java SDK, Anda mungkin menemui error seperti berikut:

Connection to http://buname.oss-cn-hangzhou-internal.aliyuncs.com refused
[RequestId]: Unknown
        at com.aliyun.oss.common.utils.ExceptionFactory.createNetworkException(ExceptionFactory.java:31)
        at com.aliyun.oss.common.comm.DefaultServiceClient.sendRequestCore(DefaultServiceClient.java:57)
        at com.aliyun.oss.common.comm.ServiceClient.sendRequestImpl(ServiceClient.java:191)
        at com.aliyun.oss.common.comm.ServiceClient.sendRequest(ServiceClient.java:151)
        at com.aliyun.oss.internal.OSSOperation.send(OSSOperation.java:71)
        at com.aliyun.oss.internal.OSSObjectOperation.putObject(OSSObjectOperation.java:92)
        at com.aliyun.oss.OSSClient.putObject(OSSClient.java:394)
        at osscs1.OSSPutObjectSample.uploadFile(OSSPutObjectSample.java:82)
        at osscs1.OSSPutObjectSample.main(OSSPutObjectSample.java:46)

Penyebab

Error ini umumnya disebabkan oleh dua hal. Identifikasi penyebab yang relevan di lingkungan Anda sebelum melanjutkan.

Penyebab 1: Menggunakan titik akhir internal dari luar jaringan internal

Titik akhir internal mengandung -internal dalam URL (misalnya, oss-cn-hangzhou-internal.aliyuncs.com). Titik akhir ini hanya dapat diakses oleh klien yang berada dalam jaringan internal wilayah yang sama dengan Bucket OSS Anda. Jika klien Anda tidak berada dalam jaringan internal wilayah tersebut, koneksi akan ditolak.

Cara mengidentifikasi penyebab ini: Periksa apakah titik akhir dalam konfigurasi SDK Anda mengandung -internal. Jika ya, dan klien Anda tidak berada dalam jaringan internal wilayah yang sama dengan Bucket OSS, maka inilah penyebabnya.

Penyebab 2: Port 80 atau 443 diblokir

Meskipun klien dan OSS berada dalam wilayah yang sama, kebijakan jaringan—seperti aturan firewall atau pengaturan security group—dapat memblokir port 80 atau 443, sehingga SDK tidak dapat terhubung ke OSS.

Cara mengidentifikasi penyebab ini: Gunakan telnet untuk menguji ketersediaan port tersebut, seperti yang dijelaskan pada bagian berikut.

Diagnosis masalah

Jalankan perintah berikut pada mesin klien untuk mengidentifikasi penyebabnya.

Langkah 1: Uji konektivitas dasar dengan ping

ping oss-cn-hangzhou.aliyuncs.com

Jika perintah mengembalikan respons seperti berikut, berarti konektivitas jaringan dasar dan resolusi DNS berfungsi:

PING oss-cn-hangzhou.aliyuncs.com (x.x.x.x): 56 data bytes
64 bytes from x.x.x.x: icmp_seq=0 ttl=xx time=x.xxx ms

Jika perintah timeout atau mengembalikan error, mesin Anda tidak dapat menjangkau titik akhir publik OSS. Verifikasi konfigurasi jaringan Anda atau hubungi administrator jaringan Anda.

Langkah 2: Uji ketersediaan port dengan telnet

telnet oss-cn-hangzhou.aliyuncs.com 80

Jika port 80 terbuka, Anda akan melihat layar kosong atau pesan Connected seperti berikut:

Trying x.x.x.x...
Connected to oss-cn-hangzhou.aliyuncs.com.

Jika Anda melihat Connection refused atau perintah timeout, berarti port 80 diblokir di jaringan Anda. Uji juga port 443:

telnet oss-cn-hangzhou.aliyuncs.com 443
Catatan: Ganti oss-cn-hangzhou.aliyuncs.com dengan titik akhir publik untuk wilayah Anda. Untuk daftar lengkap titik akhir, lihat Nama domain akses dan pusat data.

Solusi

Alihkan ke titik akhir publik dan perbarui konfigurasi SDK Anda:

private static final String OSS_ENDPOINT = "http://oss-cn-hangzhou.aliyuncs.com/";
OSSClient client = new OSSClient(OSS_ENDPOINT, ACCESS_ID, ACCESS_KEY);

Jika telnet mengonfirmasi bahwa port 80 dan 443 keduanya diblokir, bekerja samalah dengan administrator jaringan Anda untuk membuka port yang diperlukan sebelum mengganti titik akhir.

Langkah selanjutnya