全部产品
Search
文档中心

Edge Security Acceleration:Ubah header respons keluar

更新时间:Dec 25, 2025

Header respons keluar merupakan bagian dari pesan respons HTTP yang dikirim oleh titik keberadaan (POP) Edge Security Acceleration (ESA) ke klien. Anda dapat mengonfigurasi header respons keluar pada POP untuk mengontrol header mana saja yang dikembalikan bersama sumber daya. ESA memungkinkan Anda menambahkan, memodifikasi, dan menghapus aturan header respons keluar.

Cara kerja

Ketika klien meminta suatu sumber daya, permintaan tersebut pertama kali mencapai POP ESA. Jika permintaan tidak ditemukan di cache POP ESA, POP tersebut mengirim permintaan origin fetch ke server asal untuk mengambil data. Setelah server asal mengembalikan data, POP ESA memodifikasi respons asli berdasarkan aturan header respons yang telah Anda konfigurasi—seperti menambahkan, mengganti, atau menghapus header tertentu—lalu mengembalikan sumber daya lengkap dengan header respons yang telah dimodifikasi ke klien. Proses ini membantu Anda menerapkan kontrol akses lintas asal, mengoptimalkan kebijakan cache, serta memenuhi persyaratan bisnis lainnya.

image

Kasus penggunaan

  • Beritahu klien tentang tipe sumber daya yang dikembalikan oleh ESA: Tambahkan header respons seperti Content-Type: text/html. Hal ini memberi tahu klien bahwa format file dari ESA adalah HTML, sehingga klien dapat merendernya dengan benar.

  • Aktifkan berbagi sumber daya lintas asal: Saat pengguna meminta sumber daya dari nama domain yang dilayani oleh ESA, Anda dapat mengonfigurasi header respons Access-Control-Allow-Origin dalam pesan respons dari ESA. Ini mengaktifkan berbagi sumber daya lintas asal. Untuk informasi selengkapnya, lihat Konfigurasikan berbagi sumber daya lintas asal.

  • Sesuaikan perilaku respons: Tambahkan atau modifikasi header kustom untuk menyesuaikan konten dan format respons yang diterima klien. Hal ini memungkinkan Anda menerapkan fitur atau pelacakan tertentu.

Catatan

Jika Anda menambahkan beberapa aturan, aturan tersebut dieksekusi dari atas ke bawah sesuai urutan kemunculannya dalam daftar. Jika aturan berikutnya menentukan nama header respons yang sama, aturan tersebut akan menimpa aturan sebelumnya, yang dapat menyebabkan hasil yang tidak terduga.

Contoh 1

  • Pesan respons berisi header test:123.

  • Sebuah aturan menambahkan header test:321.

Jika pesan respons sesuai dengan aturan tersebut, header asli test:123 akan ditimpa menjadi test:321.

Contoh 2

  • Pesan respons berisi header test:123.

  • Sebuah aturan menambahkan header test:321, dan aturan lain dikonfigurasi untuk menghapus header test.

Jika pesan respons sesuai dengan aturan tersebut, header asli test:123 akan dihapus.

Prosedur

Setelah Anda menambahkan aturan, ketika pengguna meminta sumber daya, ESA mencocokkan dan mengeksekusi aturan secara berurutan berdasarkan prioritas eksekusi aturan.

  1. Di Konsol ESA, pilih Websites. Di kolom Website, klik nama situs target.

  2. Di panel navigasi sebelah kiri, pilih Rules > Transform Rules.

  3. Klik tab Modify Response Header dan pilih ESA to Client. Klik Create Rule dan masukkan Rule Name.

  4. Di bagian If requests match..., tetapkan kondisi pencocokan permintaan. Untuk informasi lebih lanjut tentang cara mengonfigurasi aturan, lihat Komposisi ekspresi aturan.

  5. Di bagian Modify Response Header, pilih Operation, lalu masukkan Response Header Name dan Response Header Value.

    Operation

    Type

    Description

    Example

    Add

    Static

    • Menambahkan header respons yang ditentukan ke respons yang dikirim ke klien.

    • Jika respons sudah berisi header dengan nama yang sama, header baru akan menimpa header yang ada.

    Untuk menambahkan header respons dengan nama x-code dan nilai key1, konfigurasikan parameter berikut:

    • Response Header Name: x-code

    • Response Header Value: key1

    Dynamic

    Nilai header respons dapat diatur ke sebuah expression.

    Untuk menambahkan header respons bernama Client-Ip-Geo-Location dengan nilai ip.geoip.country guna mencatat negara atau wilayah alamat IP klien, konfigurasikan parameter berikut:

    • Response Header Name: Client-Ip-Geo-Location

    • Response Header Value: ip.geoip.country

    Change

    Static

    Memperbarui nilai header respons tertentu dalam respons yang dikirim ke klien.

    Untuk memperbarui header respons bernama x-code menjadi nilai key2, konfigurasikan parameter berikut:

    • Response Header Name: x-code

    • Response Header Value: key2

    Dynamic

    Nilai header respons dapat diatur ke sebuah expression.

    Untuk memperbarui header respons bernama Client-Ip-Geo-Location menjadi nilai ip.geoip.country agar nilai header berubah menjadi negara atau wilayah alamat IP klien, konfigurasikan parameter berikut:

    • Response Header Name: Client-Ip-Geo-Location

    • Response Header Value: ip.geoip.country

    Delete

    Menghapus semua nilai parameter yang sesuai dengan Response Header Name dari respons yang dikirim ke klien, terlepas dari apakah terdapat parameter header respons duplikat.

    Untuk menghapus header respons bernama x-code, atur Response Header Name menjadi x-code.

    Catatan
    • Jangan mengonfigurasi Response Header Name yang diawali dengan ali-inner atau ali-swift (tidak peka huruf besar/kecil).

    • Anda dapat mengonfigurasi beberapa nilai untuk Response Header Value. Pisahkan nilai-nilai tersebut dengan koma (,).

    • Operasi hapus bekerja sama baik untuk mode static maupun dynamic.

    • Operasi perbarui hanya memodifikasi header respons yang sudah ada. Operasi ini hanya berlaku jika header dengan nama yang ditentukan sudah ada dalam respons asli.

  6. Klik OK.

Contoh ekspresi dinamis

Contoh 1

Tambahkan header respons untuk mencatat alamat IP asal klien.

  • Response Header Name: True-Client-IP

  • Response Header Value: ip.src

Contoh 2

Tambahkan header respons untuk mencatat kode negara yang sesuai dengan alamat IP klien.

  • Response Header Name: IP-Country-Code

  • Response Header Value: ip.geoip.country

Contoh 2

Tambahkan header respons untuk mencatat kode provinsi yang sesuai dengan alamat IP klien.

  • Response Header Name: IP-Province-Code

  • Response Header Value: ip.src.subdivision_1_iso_code

Parameter header respons

Parameter header respons

Description

Example

Custom

Anda dapat menambahkan header respons kustom. Nama header respons kustom harus memenuhi persyaratan berikut:

  • Terdiri dari huruf besar, huruf kecil, tanda hubung (-), dan angka.

  • Panjangnya antara 1 hingga 100 karakter.

Test-Header

Cache-Control

Menentukan mekanisme caching yang harus diikuti oleh program klien untuk permintaan dan respons.

no-cache

Content-Disposition

Menentukan nama file default saat program klien menyimpan konten yang diminta sebagai file.

examplefile.txt

Content-Type

Menentukan tipe konten objek respons untuk program klien.

text/plain

Pragma

Pragma adalah header umum yang didefinisikan dalam HTTP/1.0. Header ini biasanya digunakan dalam respons server untuk menentukan perilaku caching klien terhadap file.

no-cache

Access-Control-Allow-Origin

Menentukan origin mana yang dapat mengakses sumber daya. Header ini merupakan bagian dari mekanisme berbagi sumber daya lintas asal (CORS, Cross-Origin Resource Sharing), yang memungkinkan server menyatakan apakah sumber dayanya dapat diakses oleh nama domain origin tertentu. Nilai header respons ini mendukung tipe berikut:

  • Karakter wildcard *: Gunakan karakter wildcard untuk mengizinkan origin apa pun mengakses sumber daya. Metode ini sangat longgar dan cocok untuk sumber daya publik yang dapat diakses tanpa autentikasi atau otorisasi. Namun, gunakan karakter wildcard dengan hati-hati di lingkungan produksi karena dapat menimbulkan risiko keamanan, seperti serangan pemalsuan permintaan lintas situs (cross-site request forgery).

  • Origin tunggal yang ditentukan: Anda dapat menentukan satu nama domain origin untuk hanya mengizinkan origin tersebut mengakses sumber daya. Contohnya, http://example.com atau https://api.example.com. Permintaan harus berasal dari origin yang ditentukan. Jika tidak, permintaan tersebut akan ditolak.

  • *

  • http://www.aliyun.com

Access-Control-Allow-Methods

Menentukan metode yang diizinkan untuk permintaan lintas asal. Pisahkan beberapa metode dengan koma (,).

POST,GET

Access-Control-Allow-Headers

Menentukan bidang yang diizinkan untuk permintaan lintas asal.

X-Custom-Header

Access-Control-Expose-Headers

Menentukan header kustom yang diizinkan untuk diakses.

Content-Length

Access-Control-Allow-Credentials

Header respons ini menunjukkan apakah respons terhadap permintaan dapat diekspos ke halaman.

  • true: Respons dapat diekspos.

  • Nilai lain: Respons tidak dapat diekspos.

true

Access-Control-Max-Age

Menentukan durasi cache, dalam detik, untuk hasil permintaan preflight terhadap sumber daya tertentu.

600

Catatan
  • Nilai header respons dapat diatur ke *, yang berarti origin apa pun.

  • Jika nilai header respons bukan *, Anda dapat mengonfigurasi satu atau beberapa alamat IP, nama domain, atau kombinasi keduanya. Pisahkan dengan koma (,).

  • Jika nilai header respons bukan *, nilai tersebut harus mencakup protokol http:// atau https://.

  • Nilai header respons dapat mencakup nomor port.

  • Nilai header respons mendukung nama domain wildcard.

Referensi

Fitur terkait aturan memiliki variasi dalam prioritas eksekusiperilaku aturan, dan cakupan konfigurasi. Untuk informasi selengkapnya, lihat Cara aturan ESA diterapkan.