All Products
Search
Document Center

Object Storage Service:Cara mengonfigurasi perilaku pratinjau browser untuk objek OSS?

Last Updated:Aug 18, 2026

Saat Anda mengakses objek OSS melalui browser, objek tersebut mungkin diunduh alih-alih ditampilkan secara inline. Panduan ini membantu Anda mendiagnosis penyebabnya dan mengonfigurasi perilaku pratinjau yang sesuai.

Pemecahan Masalah

Jika objek diunduh alih-alih ditampilkan, jalankan perintah curl untuk memeriksa header respons dan mengidentifikasi penyebabnya.

Tujuan: Memastikan apakah header respons berisi bidang yang memaksa unduhan.

Langkah-langkah: Jalankan perintah berikut di terminal Anda. Ganti <your-object-url> dengan URL objek Anda.

curl -I "<your object URL>"

Analisis hasil: Periksa respons untuk keberadaan bidang x-oss-force-download dan Content-Disposition.

Solusi

Skenario 1: Unduhan paksa akibat kebijakan keamanan OSS

Skenario ini terjadi ketika header respons berisi x-oss-force-download: true.

  • Penyebab: OSS menambahkan header x-oss-force-download: true dan Content-Disposition: attachment untuk mencegah jenis file tertentu (seperti HTML) dieksekusi di browser. Kebijakan ini berlaku saat Anda mengakses objek melalui OSS default domain name atau acceleration endpoint pada bucket yang dibuat setelah tanggal tertentu.

    Untuk informasi lebih lanjut tentang kebijakan ini, lihat Lampiran: Referensi cepat aturan unduhan paksa OSS di akhir topik ini.
  • Solusi: Gunakan nama domain kustom untuk mengakses sumber daya OSS

  • Prosedur:

    1. Petakan domain kustom: Masuk ke Konsol OSS. Di halaman Domain Names bucket, petakan nama domain kustom Anda yang telah memiliki Pendaftaran ICP.

    2. Konfigurasi rekaman CNAME: Di penyedia nama domain Anda, seperti Alibaba Cloud DNS, tambahkan rekaman CNAME yang mengarahkan nama domain kustom Anda ke alamat CNAME yang disediakan oleh OSS.

    3. Akses objek dengan domain baru: Akses objek melalui URL domain kustom Anda. Objek kini akan ditampilkan secara inline.

Catatan
  • Untuk akselerasi global, petakan domain kustom Anda ke acceleration endpoint. Ini melewati kebijakan unduhan paksa sekaligus memberikan akses yang dipercepat.

  • Untuk instruksi detail, lihat Akses OSS melalui nama domain kustom.

Skenario 2: Unduhan paksa akibat pengaturan metadata objek

Skenario ini terjadi ketika header respons berisi Content-Disposition: attachment tetapi tidak berisi x-oss-force-download.

  • Penyebab: Metadata Content-Disposition objek diatur ke attachment, yang memaksa browser mengunduh alih-alih menampilkan objek. Jika pengaturan ini tidak dihapus setelah penggunaan sementara, semua permintaan selanjutnya akan memicu unduhan.

  • Solusi: Ubah metadata Content-Disposition objek menjadi inline

    • Ubah melalui konsol

      1. Masuk ke Konsol OSS dan buka halaman Objects di bagian Object Management bucket target.

      2. Temukan objek target. Klik ikon di kolom Actions dan pilih Set Object Metadata.

      3. Pada kotak dialog yang muncul, temukan bidang Content-Disposition dan ubah nilainya menjadi inline.

      4. Klik OK untuk menyimpan pengaturan.

    • Ubah secara batch menggunakan ossutil

      # Atur Content-Disposition objek tertentu menjadi inline.
      ossutil set-props oss://your-bucket/your-object.pdf --content-disposition inline --metadata-directive update

Skenario 3: Browser gagal menampilkan objek karena Content-Type salah

Skenario ini terjadi ketika header respons normal, tetapi browser tetap mengunduh objek.

  • Penyebab: Content-Type objek (jenis MIME) tidak ada atau salah. Misalnya, gambar JPG dengan Content-Type diatur ke application/octet-stream akan diunduh karena browser tidak dapat mengenali jenis file tersebut.

  • Solusi: Atur Content-Type yang benar untuk objek

    • Ubah melalui konsol

      1. Masuk ke Konsol OSS dan buka halaman Objects di bagian Object Management bucket target.

      2. Temukan objek target. Klik ikon di kolom Actions dan pilih Set Object Metadata.

      3. Pada kotak dialog yang muncul, temukan bidang Content-Type dan ubah nilainya ke nilai yang benar.

      4. Klik OK untuk menyimpan pengaturan.

      Contoh Content-Type yang benar untuk jenis file umum:

      • Gambar: image/jpeg, image/png, image/gif, image/webp

      • Video: video/mp4

      • Dokumen PDF: application/pdf

      • File HTML: text/html

      • Teks biasa: text/plain

    • Ubah secara batch menggunakan ossutil

      # Atur Content-Type objek tertentu menjadi image/jpeg.
      ossutil set-props oss://your-bucket/your-object.jpg --content-type image/jpeg --metadata-directive update
    • Ubah dengan menggunakan SDK CopyObject

      Saat Anda menggunakan CopyObject untuk menyalin objek, direktif metadata COPY digunakan secara default. Direktif ini menyalin metadata objek sumber ke objek tujuan apa adanya dan tidak secara otomatis melakukan inferensi atau memperbarui Content-Type berdasarkan ekstensi nama file objek tujuan. Dalam kasus ini, jika Anda hanya menentukan Content-Type dalam permintaan tanpa mengatur x-oss-metadata-directive ke REPLACE, pengaturan tersebut tidak berlaku, dan objek tujuan tetap menggunakan Content-Type objek sumber.

      Nilai valid untuk x-oss-metadata-directive:

      • COPY (default): menyalin metadata objek sumber dan mengabaikan metadata seperti Content-Type yang ditentukan dalam permintaan.

      • REPLACE: mengganti metadata objek sumber dengan metadata yang ditentukan dalam permintaan.

      Saat memanggil CopyObject, Anda harus menentukan Content-Type dan x-oss-metadata-directive: REPLACE untuk memperbarui Content-Type objek tujuan ke nilai yang ditentukan. Contoh kode berikut menggunakan Python SDK:

      import oss2
      
      # Inisialisasi bucket.
      auth = oss2.Auth('<your-access-key-id>', '<your-access-key-secret>')
      bucket = oss2.Bucket(auth, '<your-endpoint>', '<your-bucket-name>')
      
      # Atur Content-Type dan tetapkan direktif metadata ke REPLACE saat menyalin objek.
      headers = {
          "Content-Type": "image/jpeg",
          "x-oss-metadata-directive": "REPLACE"
      }
      bucket.copy_object('<source-bucket-name>', 'source-object.png', 'target-object.jpg', headers=headers)

      Sebagai alternatif, Anda dapat menggunakan metode update_object_meta untuk langsung memperbarui Content-Type objek yang sudah ada, atau tentukan Content-Type saat mengunggah objek menggunakan put_object.

Kasus penggunaan tambahan dan solusi

Perubahan metadata tidak berlaku: Periksa cache CDN

Jika Anda menggunakan CDN untuk mempercepat akses ke OSS, perubahan metadata seperti Content-Type atau Content-Disposition mungkin tidak langsung berlaku karena node CDN masih menyajikan versi yang di-cache.

Solusi: Bersihkan cache CDN untuk URL file yang dimodifikasi di Konsol CDN. Refresh dan prefetch sumber daya.

Bagaimana cara memaksa objek diunduh alih-alih ditampilkan?

Untuk selalu memaksa unduhan saat pengguna mengakses file, gunakan salah satu metode berikut.

  • Metode 1 (Direkomendasikan): Konfigurasi di OSS. Atur metadata Content-Disposition file ke attachment seperti yang dijelaskan di Skenario 2. Terbaik untuk pengaturan permanen per file.

  • Metode 2: Konfigurasi di CDN. Tambahkan Content-Disposition: attachment sebagai header respons outbound di bawah Cache di Konsol CDN. Ini menghindari modifikasi file sumber dan mendukung konfigurasi batch berdasarkan path atau jenis file.

Browser tidak mendukung format file untuk pratinjau

Browser tidak dapat menampilkan format profesional tertentu seperti .psd, .ai, dan .sketch. File-file ini akan diunduh terlepas dari konfigurasi OSS dan CDN.

Solusi: Pasang ekstensi browser untuk format tersebut, atau gunakan layanan pratinjau dokumen seperti WebOffice Online Preview.

Lampiran: Referensi cepat aturan unduhan paksa OSS

Periksa nilai x-oss-ec di header respons, lalu gunakan tabel berikut untuk mengidentifikasi aturan yang sesuai.

  • Kode error (x-oss-ec): Mengidentifikasi aturan yang memicu unduhan.

  • Waktu pembuatan bucket: Kebijakan biasanya hanya berlaku untuk bucket yang dibuat setelah waktu ini. Bucket lama biasanya tidak terpengaruh.

  • Waktu pengaktifan akselerasi transfer: Kebijakan biasanya hanya berlaku untuk bucket dengan akselerasi transfer yang diaktifkan setelah waktu ini. Bucket dengan akselerasi transfer yang diaktifkan lebih awal biasanya tidak terpengaruh.

Anda dapat melewati semua aturan unduhan paksa dengan menggunakan nama domain kustom.

Nama domain default OSS

Waktu kebijakan berlaku

Wilayah

Sumber daya yang terpengaruh

Jenis file yang terpengaruh

Kode error

08:00, 28 September 2018

China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Shenzhen), China (Chengdu)

Bucket yang dibuat setelah kebijakan berlaku

text/html

0048-00000001

12:00, 25 September 2019

China (Nanjing - Local Region - Phasing Out) China (Ulanqab), China (Heyuan), China (Guangzhou), US (Silicon Valley), US (Virginia), Korea Selatan (Seoul), Singapura, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Filipina (Manila), Thailand (Bangkok), UK (London), UEA (Dubai)

Bucket yang dibuat setelah kebijakan berlaku

text/html

0048-00000001

14:00, 25 November 2019

China (Hong Kong)

Bucket yang dibuat setelah kebijakan berlaku

text/html

0048-00000001

17:00, 23 September 2019

China (Hohhot)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic, text/html

0048-00000100

11:00, 24 September 2019

China (Qingdao), China (Chengdu)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic, text/html

0048-00000101

17:00, 24 September 2019

China (Zhangjiakou)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic, text/html

0048-00000102

17:00, 29 September 2019

China (Shanghai), China (Shenzhen)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic, text/html

0048-00000103

18:00, 29 September 2019

China (Beijing)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic, text/html

0048-00000104

15:00, 30 September 2019

China (Hangzhou)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic, text/html

0048-00000105

00:00, 09 Oktober 2022

Semua wilayah

Bucket yang dibuat oleh pengguna yang pertama kali mengaktifkan OSS setelah pukul 00:00 pada 9 Oktober 2022

Semua

0048-00000113

10:00, 22 Desember 2025

China (Ulanqab), China (Heyuan), China (Guangzhou), China (Nanjing - Local Region - Phasing Out)

Bucket yang dibuat setelah kebijakan berlaku

image/jpeg, image/gif, image/tiff, image/png, image/webp, image/svg+xml, image/bmp, image/x-ms-bmp, image/x-cmu-raster, image/exr, image/x-icon, image/heic

0048-00000114

Titik akhir percepatan

Waktu berlaku

Wilayah

Sumber daya yang terpengaruh

Jenis file yang terpengaruh

Kode error

00:00, 31 Desember 2020

Semua wilayah

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

text/html

0048-00000002

12:00, 07 Januari 2021

UEA (Dubai)

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

Semua

0048-00000107

18:00, 07 Januari 2021

Malaysia (Kuala Lumpur), UK (London)

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

Semua

0048-00000108

18:00, 08 Januari 2021

Jepang (Tokyo), Indonesia (Jakarta), Jerman (Frankfurt)

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

Semua

0048-00000109

12:00, 14 Januari 2021

US (Silicon Valley), US (Virginia), Singapura

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

Semua

0048-00000110

00:00, 16 Januari 2021

China (Hong Kong)

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

Semua

0048-00000111

00:00, 09 Oktober 2022

Semua wilayah

Bucket yang dibuat oleh pengguna yang pertama kali mengaktifkan OSS setelah pukul 00:00 pada 9 Oktober 2022

Semua

0048-00000113

00:00, 01 Februari 2023

Korea Selatan (Seoul), Filipina (Manila), Thailand (Bangkok)

Bucket yang diaktifkan akselerasi transfer-nya setelah kebijakan berlaku

Semua

0048-00000112