Anda dapat memanggil operasi API BatchSetCdnDomainConfig dan SetCdnDomainStagingConfig untuk mengonfigurasi fitur pada beberapa nama domain sekaligus. Topik ini menjelaskan fitur yang dapat dikonfigurasi beserta parameter-parameternya.
Fitur-fitur yang dijelaskan dalam topik ini dapat digunakan oleh operasi API berikut:
Lingkungan produksi: BatchSetCdnDomainConfig, DescribeCdnDomainConfigs, BatchDeleteCdnDomainConfig, dan DescribeCdnUserDomainsByFunc.
Lingkungan staging: SetCdnDomainStagingConfig, DescribeCdnDomainStagingConfig, RollbackStagingConfig, dan PublishStagingConfigToProduction.
Anda dapat memanggil BatchSetCdnDomainConfig dan SetCdnDomainStagingConfig untuk menerapkan konfigurasi batch ke nama domain. Hal ini menghasilkan ConfigId unik yang dapat digunakan untuk memperbarui atau menghapus konfigurasi tertentu. Untuk informasi selengkapnya, lihat Menggunakan ConfigId.
Informasi dasar
ipv6
Fitur ini digunakan untuk mengonfigurasi akses IPv6. Untuk informasi selengkapnya, lihat Konfigurasi IPv6.
ID Fungsi (FunctionID/FuncId): 194.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
switch
String
Ya
Menentukan apakah akan mengaktifkan akses IPv6. Nilai yang valid:
on: Mengaktifkan fitur.
off: Menunjukkan status nonaktif.
on
region
String
Ya
Wilayah tempat IPv6 diaktifkan. Karakter wildcard (*) didukung.
CatatanKarakter wildcard (*) menunjukkan bahwa IPv6 diaktifkan untuk semua wilayah. Saat ini, Anda hanya dapat mengaktifkan IPv6 untuk semua wilayah. Untuk mengaktifkan IPv6 untuk wilayah tertentu, kirim tiket.
Jika Anda tidak menentukan parameter ini, IPv6 diaktifkan untuk semua wilayah secara default.
*
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "switch", "argValue": "on" }, { "argName": "region", "argValue": "*" }], "functionName": "ipv6" }], "DomainNames": "example.com" }
Konfigurasi pengambilan asal
set_req_host_header
Deskripsi: Mengonfigurasi HOST pengambilan asal default. Untuk informasi selengkapnya, lihat Konfigurasi HOST pengambilan asal default.
ID Fungsi (FunctionID/FuncId): 18.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
domain_name
String
Ya
Konten header host asal.
example.comContoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "domain_name", "argValue": "example.com" }], "functionName": "set_req_host_header" }], "DomainNames": "example.com" }
forward_scheme
Deskripsi: Mengonfigurasi kebijakan protokol asal. Untuk informasi selengkapnya, lihat Konfigurasi kebijakan protokol asal.
ID Fungsi (FunctionID/FuncId): 47.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan kebijakan protokol asal. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
on
scheme_origin
String
Tidak
Protokol asal. Nilai yang valid:
http: CDN menggunakan HTTP untuk pengambilan asal.
https: CDN menggunakan HTTPS untuk pengambilan asal.
follow: CDN menggunakan protokol yang sama dengan permintaan klien untuk mengambil konten dari server asal.
CatatanJika Anda tidak mengatur scheme_origin, nilai default-nya adalah follow.
follow
scheme_origin_port
String
Tidak
Port asal kustom. Parameter ini harus digunakan bersama parameter scheme_origin. Nilai yang valid:
Jika scheme_origin diatur ke http, Anda hanya perlu mengonfigurasi port asal HTTP. Contoh: 80.
Jika scheme_origin diatur ke https, Anda hanya perlu mengonfigurasi port asal HTTPS. Contoh: 443.
Jika scheme_origin diatur ke follow, Anda harus mengonfigurasi port asal HTTP dan HTTPS. Pisahkan port dengan tanda titik dua (:). Contoh: 80:443.
80:443
Contoh konfigurasi 1: CDN menggunakan protokol yang sama dengan permintaan klien untuk pengambilan asal. Port asal adalah port default untuk protokol tersebut. Port 80 digunakan untuk HTTP, dan port 443 digunakan untuk HTTPS.
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "scheme_origin", "argValue": "follow" }], "functionName": "forward_scheme" }], "DomainNames": "example.com" }Contoh konfigurasi 2: CDN menggunakan protokol yang sama dengan permintaan klien untuk pengambilan asal. Port asal adalah port kustom. Port 8080 digunakan untuk HTTP, dan port 4433 digunakan untuk HTTPS.
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "scheme_origin", "argValue": "follow" }, { "argName": "scheme_origin_port", "argValue": "8080:4433" }], "functionName": "forward_scheme" }], "DomainNames": "example.com" }
l2_oss_key
Mengonfigurasi pengambilan asal untuk bucket OSS pribadi. Catatan: Saat pertama kali menggunakan fitur ini, Anda harus mengaktifkan kebijakan akses default dalam satu klik. Ini memberikan izin akses read-only CDN ke semua bucket OSS di bawah akun Anda. Untuk informasi selengkapnya, lihat Pengambilan asal untuk bucket OSS pribadi.
ID Fungsi (FunctionID/FuncId): 85.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
private_oss_auth
String
Ya
Menentukan apakah akan mengaktifkan pengambilan asal dari bucket pribadi. Nilai yang valid:
on: aktifkan.
Off: Menunjukkan status nonaktif.
Saat fitur ini diaktifkan, sistem secara otomatis mengonfigurasi token Layanan Keamanan (STS) untuk menyederhanakan konfigurasi. Namun, fitur ini hanya mendukung pengambilan asal dari nama domain yang dipercepat ke bucket OSS pribadi yang berada dalam akun Alibaba Cloud yang sama. Untuk informasi selengkapnya tentang token STS, lihat Apa itu STS?.
on
perm_private_oss_tbl
String
Tidak
Konfigurasi untuk token keamanan permanen. Formatnya adalah
access_id=123 access_secret=123abc. Pisahkan bidang dengan spasi.Setelah Anda mengonfigurasi token keamanan permanen, nama domain yang dipercepat dapat mengambil konten tidak hanya dari bucket OSS pribadi di bawah akun Alibaba Cloud yang sama tetapi juga dari akun Alibaba Cloud yang berbeda. Untuk informasi selengkapnya tentang token keamanan permanen, lihat Buat AccessKey.
access_id=123 access_secret=123abc
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "private_oss_auth", "argValue": "on" },{ "argName": "perm_private_oss_tbl", "argValue": "access_id=123 access_secret=123abc" }], "functionName": "l2_oss_key" }], "DomainNames": "example.com" }
oss_key_list
Deskripsi: Daftar kunci pribadi untuk pengambilan asal OSS. Anda dapat mengonfigurasi satu atau beberapa aturan untuk bucket OSS pribadi yang berbeda beserta token keamanannya.
ID Fungsi (FunctionID/FuncId): 183.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
host
String
Ya
Alamat lengkap bucket OSS.
example.oss-cn-hangzhou.aliyuncs.com
key
String
Ya
Konfigurasi untuk token keamanan permanen. Formatnya adalah
access_id=123 access_secret=123abc. Pisahkan bidang dengan spasi.Setelah Anda mengonfigurasi token keamanan permanen, nama domain yang dipercepat dapat melakukan pengambilan asal tidak hanya ke bucket OSS pribadi di akun Alibaba Cloud yang sama, tetapi juga ke bucket OSS pribadi di akun Alibaba Cloud lainnya. Untuk informasi selengkapnya tentang token keamanan permanen, lihat Buat AccessKey.
access_id=123 access_secret=123abc
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "host", "argValue": "example.oss-cn-hangzhou.aliyuncs.com" },{ "argName": "key", "argValue": "access_id=123 access_secret=123abc" }], "functionName": "oss_key_list" }], "DomainNames": "example.com" }
https_origin_sni
Deskripsi: Mengonfigurasi SNI asal. Untuk informasi selengkapnya, lihat Konfigurasi SNI asal default.
ID Fungsi (FunctionID/FuncId): 114.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
enabled
String
Ya
Menentukan apakah akan mengaktifkan fitur SNI asal. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
on
https_origin_sni
String
Ya
Informasi SNI yang dibawa dalam permintaan asal. Ini adalah alamat server asal yang perlu diakses oleh permintaan asal.
origin.example.comContoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "https_origin_sni", "argValue": "origin.example.com" }, { "argName": "enabled", "argValue": "on" }], "functionName": "https_origin_sni" }], "DomainNames": "example.com" }
forward_timeout
Deskripsi: Mengonfigurasi waktu tunggu untuk permintaan pengambilan asal. Untuk informasi selengkapnya, lihat Konfigurasi waktu tunggu untuk permintaan HTTP pengambilan asal.
ID Fungsi (FunctionID/FuncId): 124.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
forward_timeout
Integer
Ya
Periode waktu tunggu permintaan. Satuan: detik.
CatatanAtur periode waktu tunggu kurang dari 100 detik.
30
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "forward_timeout", "argValue": "30" }], "functionName": "forward_timeout" }], "DomainNames": "example.com" }
advanced_origin
Deskripsi: Mengonfigurasi fitur asal lanjutan. Untuk informasi selengkapnya, lihat Asal lanjutan.
Konflik fitur: Fitur asal lanjutan dan fitur asal bersyarat (fungsi: origin_dns_host, ID fungsi: 212) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Perhatikan bahwa fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fungsi (FunctionID/FuncId): 235.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
variable_type
String
Ya
Jenis variabel. Nilai yang valid:
header: header permintaan yang dibawa dalam permintaan pengguna.
arg: parameter string kueri yang dibawa dalam URL permintaan pengguna.
uri: path yang dibawa dalam URL permintaan pengguna.
cookie: cookie permintaan yang dibawa dalam permintaan pengguna.
uri
variable
String
Ya
Nama variabel.
CatatanJika variable_type diatur ke uri, nilai variable harus uri.
uri
conditions
String
Ya
Kondisi. Nilai yang valid:
==: sama dengan.
!=: tidak sama dengan.
==
value
String
Ya
Nilai variabel.
/image
origin
String
Ya
Nama domain yang digunakan untuk kueri DNS selama pengambilan asal. Ini adalah nilai variabel dalam permintaan pengguna yang, ketika cocok, memicu pengambilan asal ke alamat server asal yang ditentukan.
origin.example.com
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "conditions", "argValue": "==" }, { "argName": "variable_type", "argValue": "uri" }, { "argName": "value", "argValue": "/image" }, { "argName": "origin", "argValue": "origin.example.com" }, { "argName": "variable", "argValue": "uri" }], "functionName": "advanced_origin" }], "DomainNames": "example.com", }
follow_302
Deskripsi: Mengonfigurasi pengalihan 302. Untuk informasi selengkapnya, lihat Konfigurasi pengalihan 301/302.
ID Fungsi (FunctionID/FuncId): 219.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pengalihan 302 untuk pengambilan asal. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
on
max_tries
Integer
Tidak
Jumlah maksimum pengalihan 302.
Nilai default: 2.
Nilai yang valid: 1 hingga 5.
CatatanJumlah pengalihan 302 adalah satu kurang dari jumlah pengambilan asal. Jumlah maksimum pengambilan asal default adalah 3, dan rentang nilai yang valid adalah 2 hingga 6.
2
retain_args
String
Tidak
Menentukan apakah akan mempertahankan parameter permintaan asli dan mengembalikannya ke server asal tujuan selama pengalihan 302. Nilai yang valid:
on: pertahankan.
off (default): jangan pertahankan.
off
retain_header
String
Tidak
Menentukan apakah akan mempertahankan header permintaan asli dan mengembalikannya ke server asal tujuan selama pengalihan 302. Nilai yang valid:
on: pertahankan.
off (default): jangan pertahankan.
off
response_header
String
Tidak
Header respons pengalihan 302. Ini adalah nama header respons pengalihan 302 yang dikirim server asal ke CDN. Nama header default adalah Location.
X-Alicdn-Redirect
retain_host
String
Tidak
Menentukan apakah akan mempertahankan nama domain asal selama pengalihan 302. Jika diaktifkan, CDN mempertahankan nama domain asal selama pengalihan 302. Ini hanya berlaku saat mengalihkan ke nama domain tujuan. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
modify_host
String
Tidak
Memodifikasi nama domain asal selama pengalihan 302. Ini hanya berlaku saat mengalihkan ke nama domain tujuan. Secara default, nama domain asal tidak dimodifikasi.
example.com
cache
String
Tidak
Menentukan apakah akan menyimpan hasil pengalihan dalam cache. Jika diaktifkan, CDN menyimpan hasil pengalihan untuk URL yang sama guna meningkatkan performa respons. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
expired_time
Integer
Tidak
Periode waktu tunggu untuk menyimpan hasil pengalihan dalam cache. Parameter ini harus digunakan bersama fitur cache. Satuan: detik. Nilai default: 3600.
7200
follow_origin_host
String
Tidak
Menentukan apakah akan menggunakan nama domain asal sebagai host asal selama pengalihan 302. Jika diaktifkan, CDN menggunakan nama domain asal sebagai host asal. Nama domain asal terbaru digunakan bahkan setelah alih bencana primer/sekunder. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
follow_5xx_retry_origin
String
Tidak
Menentukan apakah akan beralih ke server asal berikutnya yang tersedia jika CDN menerima kode status 5xx dari server asal saat ini. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "max_tries", "argValue": 2 }, { "argName": "retain_args", "argValue": "off" }, { "argName": "retain_header", "argValue": "off" }, { "argName": "response_header", "argValue": "X-Alicdn-Redirect" }, { "argName": "retain_header", "argValue": "off" }, { "argName": "modify_host", "argValue": "example.com" }, { "argName": "cache", "argValue": "off" }, { "argName": "expired_time", "argValue": "7200" }, { "argName": "follow_origin_host", "argValue": "off" }, { "argName": "follow_5xx_retry_origin", "argValue": "off" }], "functionName": "follow_302" }], "DomainNames": "example.com" }
set_req_header
Deskripsi: Mengonfigurasi header HTTP pengambilan asal kustom. Untuk informasi selengkapnya, lihat Modifikasi header permintaan arah masuk.
Catatanset_req_header adalah fitur v1. Kami menyarankan Anda menggunakan fitur v2, origin_request_header. Fitur v2 menyediakan lebih banyak fungsionalitas untuk header permintaan HTTP asal kustom.
ID Fungsi (FunctionID/FuncId): 39.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
key
String
Ya
Nama header permintaan asal.
Accept-Encoding
value
String
Ya
Nilai header permintaan asal. Untuk menghapus header permintaan asal, atur nilainya ke null.
gzip
Contoh konfigurasi 1: Tambahkan header permintaan HTTP asal.
{ "Functions": [{ "functionArgs": [{ "argName": "value", "argValue": "gzip" }, { "argName": "key", "argValue": "Accept-Encoding" }], "functionName": "set_req_header" }], "DomainNames": "example.com" }Contoh konfigurasi 2: Hapus header permintaan HTTP asal dengan mengatur nilainya ke null.
{ "Functions":[{ "functionArgs":[{ "argName":"value", "argValue":"null" }, { "argName":"key", "argValue":"User-Agent" }], "functionName":"set_req_header" }], "DomainNames":"example.com" }
origin_request_header
Deskripsi: Mengonfigurasi header permintaan HTTP pengambilan asal (Baru). Untuk informasi selengkapnya, lihat Modifikasi header permintaan arah keluar.
ID Fungsi (FunctionID/FuncId): 228.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
header_operation_type
String
Ya
Operasi header permintaan. Nilai yang valid:
add: Menambahkan item.
delete: hapus.
modify: Untuk mengubah atau mengganti.
replace: ganti.
add
header_name
String
Ya
Nama header permintaan.
Accept-Encoding
header_value
String
Tidak
Nilai header permintaan. Anda dapat mengonfigurasi beberapa nilai untuk parameter header permintaan. Pisahkan beberapa nilai dengan koma (,).
gzip
duplicate
String
Tidak
Menentukan apakah diizinkan menambahkan header permintaan dengan nama yang sama. Parameter ini wajib saat header_operation_type diatur ke add. Nilai yang valid:
on: izinkan.
off: jangan izinkan.
off
header_source
String
Tidak
Nilai parameter yang akan diganti. Parameter ini wajib saat header_operation_type diatur ke rewrite. Ekspresi reguler didukung.
value1
header_destination
String
Tidak
Nilai parameter setelah penggantian. Parameter ini wajib saat header_operation_type diatur ke rewrite.
value123
match_all
String
Tidak
Mode pencocokan. Parameter ini wajib saat header_operation_type diatur ke rewrite. Nilai yang valid:
on: mencocokkan semua nilai. Semua nilai yang cocok diganti.
off: hanya mencocokkan nilai pertama. Hanya nilai pertama yang cocok yang diganti.
off
Contoh konfigurasi: Tambahkan header permintaan asal kustom ke nama domain yang dipercepat
example.com. Atur nama header ke Accept-Encoding dan nilai header ke gzip.{ "Functions": [{ "functionArgs": [{ "argName": "header_operation_type", "argValue": "add" }, { "argName": "header_name", "argValue": "Accept-Encoding" }, { "argName": "header_value", "argValue": "gzip" }, { "argName": "duplicate", "argValue": "off" }], "functionName": "origin_request_header" }], "DomainNames": "example.com" }
origin_response_header
Deskripsi: Memungkinkan Anda mengonfigurasi header respons HTTP pengambilan asal. Untuk informasi selengkapnya, lihat Modifikasi header respons arah masuk.
ID Fungsi (FunctionID/FuncId): 229.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
header_operation_type
String
Ya
Operasi header respons. Nilai yang valid:
add: Menambahkan item.
delete: hapus.
modify: Mengubah item yang ditentukan.
Operasi rewrite setara dengan operasi replace.
add
header_name
String
Ya
Nama header respons.
Cache-Control
header_value
String
Tidak
Nilai header respons. Anda dapat mengonfigurasi beberapa nilai untuk parameter header respons. Pisahkan beberapa nilai dengan koma (,).
no-cache
duplicate
String
Tidak
Menentukan apakah diizinkan menambahkan header respons dengan nama yang sama. Parameter ini wajib saat header_operation_type diatur ke add. Nilai yang valid:
on: izinkan.
off: jangan izinkan.
off
header_source
String
Tidak
Nilai parameter yang akan diganti. Parameter ini wajib saat header_operation_type diatur ke rewrite. Ekspresi reguler didukung.
value1
header_destination
String
Tidak
Nilai parameter setelah penggantian. Parameter ini wajib saat header_operation_type diatur ke rewrite.
value123
match_all
String
Tidak
Mode pencocokan. Parameter ini wajib saat header_operation_type diatur ke rewrite. Nilai yang valid:
on: mencocokkan semua nilai. Semua nilai yang cocok diganti.
off: hanya mencocokkan nilai pertama. Hanya nilai pertama yang cocok yang diganti.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "header_operation_type", "argValue": "add" }, { "argName": "header_name", "argValue": "Cache-Control" }, { "argName": "header_value", "argValue": "no-cache" }, { "argName": "duplicate", "argValue": "off" }], "functionName": "origin_response_header" }], "DomainNames": "example.com" }
back_to_origin_url_rewrite
Deskripsi: Menulis ulang URI pengambilan asal. Untuk informasi selengkapnya, lihat Tulis ulang URL pengambilan asal.
ID Fungsi (FunctionID/FuncId): 225.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
source_url
String
Ya
URI yang akan ditulis ulang.
^/hello$
target_url
String
Ya
URI tujuan.
/hello/test
flag
String
Tidak
Aturan eksekusi untuk operasi penulisan ulang. Nilai yang valid:
Kosong: Setelah aturan ini dieksekusi, aturan penulisan ulang berikutnya terus dieksekusi.
break: Setelah aturan ini dieksekusi, aturan penulisan ulang berikutnya tidak dieksekusi.
enhance_break: Mirip dengan break, tetapi memproses URL dengan parameternya dan juga berlaku untuk stream live FLV.
break
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "flag", "argValue": "break" }, { "argName": "source_url", "argValue": "^/hello$" }, { "argName": "target_url", "argValue": "/hello/test" }], "functionName": "back_to_origin_url_rewrite" }], "DomainNames": "example.com", }
back_to_origin_argument_rewrite
Deskripsi: Menulis ulang parameter pengambilan asal. Untuk informasi selengkapnya, lihat Menulis Ulang Parameter Pengambilan Asal.
CatatanPenulisan ulang parameter asal memodifikasi parameter kueri dari URL permintaan pengambilan asal. Anda dapat mengonfigurasi beberapa aturan penulisan ulang. Prioritas tindakan penulisan ulang adalah sebagai berikut: Add > Delete > Reserve Only > Modify. Ketika aturan penulisan ulang yang berbeda berlaku untuk parameter yang sama, hanya aturan dengan prioritas tertinggi yang diterapkan.
ID Fungsi (FunctionID/FuncId): 224.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
delete_argument
String
Tidak
Daftar parameter yang akan dihapus. Pisahkan beberapa parameter dengan spasi.
code1
save_argument
String
Tidak
Daftar parameter yang akan dipertahankan. Pisahkan beberapa parameter dengan spasi. Hanya parameter yang tercantum yang dipertahankan. Tindakan tambah dan hapus parameter tetap berlaku.
empty
ignore_all_argument
String
Tidak
Menentukan apakah akan mengabaikan semua parameter. Nilai yang valid:
on: mengabaikan semua parameter. Hanya tindakan tambah parameter yang tetap efektif. Tindakan hapus, hanya simpan, dan modifikasi parameter menjadi tidak efektif.
off (default): tidak mengabaikan semua parameter. Tindakan simpan, tambah, dan hapus parameter tetap efektif.
on
add_argument
String
Tidak
Parameter yang akan ditambahkan. Tindakan ini memiliki prioritas tertinggi. Pisahkan beberapa parameter dengan spasi.
value=123
modify_argument
String
Tidak
Parameter yang akan dimodifikasi. Tindakan ini memiliki prioritas terendah. Jika suatu parameter dihapus, parameter tersebut tidak akan dipertahankan. Pisahkan beberapa parameter dengan spasi.
value=321
enable
String
Ya
Menentukan apakah akan mengaktifkan penulisan ulang parameter asal. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "delete_argument", "argValue": "" }, { "argName": "save_argument", "argValue": "" }, { "argName": "add_argument", "argValue": "" }, { "argName": "modify_argument", "argValue": "" }, { "argName": "ignore_all_argument", "argValue": "on" }, { "argName": "enable", "argValue": "on" }], "functionName": "back_to_origin_argument_rewrite" }], "DomainNames": "example.com" }
aws_s3_bucket
Deskripsi: Mengonfigurasi bucket autentikasi Amazon S3.
ID Fungsi (FunctionID/FuncId): 186.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
enabled
String
Ya
Menentukan apakah akan mengaktifkan bucket autentikasi Amazon S3. Nilai yang valid:
l2: aktifkan.
off: nonaktifkan.
l2
bucketname
String
Tidak
Nama bucket Amazon S3.
/
accesskey
String
Ya
AWS AccessKey.
123456789
secretkey
String
Ya
AWS SecretKey.
12345678
region
String
Ya
Wilayah penyimpanan Amazon S3.
us-east-2
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enabled", "argValue": "l2" }, { "argName": "accesskey", "argValue": "123456789" }, { "argName": "secretkey", "argValue": "123456789" }, { "argName": "region", "argValue": "us-east-2" }], "functionName": "aws_s3_bucket" }], "DomainNames": "example.com" }
origin_certificate_verification
Deskripsi: Mengonfigurasi verifikasi sertifikat asal (daftar putih SNI). Untuk petunjuk konfigurasi terperinci di konsol, lihat Daftar putih Common Name.
ID Fungsi (FunctionID/FuncId): 223.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
enabled
String
Ya
Menentukan apakah akan mengaktifkan verifikasi sertifikat asal. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
on
common_name_whitelist
String
Tidak
Daftar nama domain yang diizinkan untuk sertifikat. Anda dapat mengonfigurasi beberapa nama domain. Pisahkan beberapa nama domain dengan koma (,). Sertifikat untuk nama domain yang termasuk dalam daftar putih ini dapat lolos verifikasi.
example.comContoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "common_name_whitelist", "argValue": "example.com" }], "functionName": "origin_certificate_verification" }], "DomainNames": "example.com" }
origin_dns_host
Anda dapat menggunakan fitur asal bersyarat bersama dengan fitur Mesin Aturan (fungsi: condition, ID fungsi: 250) untuk mengarahkan permintaan ke asal tertentu berdasarkan informasi dalam permintaan, seperti path, parameter URL, dan header permintaan. Untuk informasi selengkapnya, lihat Konfigurasi asal bersyarat.
Prasyarat: Sebelum menambahkan asal bersyarat, Anda harus membuat setidaknya satu kondisi aturan di Mesin Aturan. Saat menambahkan asal bersyarat, Anda harus mengaitkannya dengan kondisi aturan tersebut. Untuk informasi selengkapnya, lihat Mesin Aturan. Jika tidak ada kondisi aturan yang dikaitkan, seluruh lalu lintas pengambilan asal untuk CDN akan diarahkan ke alamat server asal tunggal ini, sehingga menggagalkan tujuan penggunaan kondisi aturan untuk mengontrol URL asal.
Catatan tentang konflik fitur: Fitur asal bersyarat dan fitur asal lanjutan (fungsi: advanced_origin, ID fungsi: 235) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fungsi (FunctionID/FuncId): 212.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
ali_origin_dns_host
String
Ya
Nama domain yang digunakan untuk kueri DNS selama pengambilan asal.
example.comContoh konfigurasi: Atur `parentid` untuk mereferensikan kondisi aturan yang dibuat menggunakan fitur Mesin Aturan (fungsi: condition, ID fungsi: 250). Referensi dibuat menggunakan `configid` yang dihasilkan saat konfigurasi ditambahkan. Ini memastikan bahwa ketika permintaan pengguna memenuhi kondisi aturan tersebut, pengambilan asal diarahkan ke alamat server asal yang ditentukan.
{ "Functions": [{ "functionArgs": [{ "argName": "ali_origin_dns_host", "argValue": "example.com" }], "functionName": "origin_dns_host", "parentId":30119730104**** }], "DomainNames": "example.com" }
origin_host
Deskripsi: Anda dapat mengonfigurasi HOST pengambilan asal tertentu untuk server asal tertentu. Untuk informasi tentang konfigurasi di konsol, lihat Konfigurasi HOST pengambilan asal tertentu.
ID Fungsi (FunctionID/FuncId): 242.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
origin
String
Ya
Alamat server asal tertentu. Anda juga dapat tidak menentukan alamat server asal. Dalam hal ini, atur parameter origin ke all, yang mewakili semua server asal.
example.comhost
String
Ya
Host tertentu. Anda juga dapat tidak menentukan host. Atur parameter host ke
ali_follow_originuntuk menggunakan alamat server asal sebagai nilai host.host.example.comContoh konfigurasi 1: Saat permintaan pengguna diambil dari server asal
example.com, nilai `host` yang digunakan adalahhost.example.com.{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "example.com" }, { "argName": "host", "argValue": "host.example.com" }], "functionName": "origin_host" }], "DomainNames": "example.com" }Contoh konfigurasi 2: Permintaan pengguna ke semua server asal (diwakili oleh `all`) menggunakan nilai `host` yang sama
host.example.com.{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "host", "argValue": "host.example.com" }], "functionName": "origin_host" }], "DomainNames": "example.com" }Contoh konfigurasi 3: Permintaan pengguna ke semua server asal (diwakili oleh `all`) menggunakan alamat server asal sebagai nilai `host` (diwakili oleh
ali_follow_origin).{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "host", "argValue": "ali_follow_origin" }], "functionName": "origin_host" }], "DomainNames": "example.com" }
ali_origin_port_scheme
Deskripsi: Mengonfigurasi port asal dan protokol.
ID Fungsi (FunctionID/FuncId): 276.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
port
String
Ya
Port asal.
CatatanSaat scheme diatur ke follow, Anda harus menggunakan format
http:80|https:443.80
scheme
String
Ya
Protokol asal. Anda dapat menyesuaikan protokol asal. Nilai yang valid: http, https, follow, https_sm, dan follow_sm.
http: menggunakan protokol HTTP untuk pengambilan asal.
https: menggunakan protokol HTTPS untuk pengambilan asal dengan algoritma internasional.
follow: menggunakan protokol yang sama dengan permintaan klien untuk pengambilan asal. Saat menggunakan HTTPS untuk pengambilan asal, hanya algoritma internasional yang didukung.
Jika klien menggunakan HTTP, pengambilan asal menggunakan HTTP.
Jika klien menggunakan HTTPS:
Jika klien menggunakan algoritma internasional, pengambilan asal menggunakan HTTPS dengan algoritma internasional.
Jika klien menggunakan algoritma kriptografi Tiongkok, pengambilan asal menggunakan HTTPS dengan algoritma internasional.
https_sm: menggunakan protokol HTTPS untuk pengambilan asal dengan algoritma kriptografi Tiongkok.
follow_sm: menggunakan protokol yang sama dengan permintaan klien untuk pengambilan asal. Saat menggunakan HTTPS untuk pengambilan asal, baik algoritma internasional maupun algoritma kriptografi Tiongkok didukung.
Jika klien menggunakan HTTP, pengambilan asal menggunakan HTTP.
Klien menggunakan HTTPS.
Jika klien menggunakan algoritma internasional, pengambilan asal menggunakan HTTPS dengan algoritma internasional.
Jika klien menggunakan algoritma kriptografi Tiongkok, pengambilan asal menggunakan HTTPS dengan algoritma kriptografi Tiongkok.
CatatanAlgoritma internasional adalah algoritma enkripsi standar. Algoritma kriptografi Tiongkok disertifikasi oleh Administrasi Kriptografi Negara Tiongkok.
http
Contoh konfigurasi 1: Atur protokol asal ke http dan port asal ke 80.
{ "Functions": [{ "functionArgs": [{ "argName": "port", "argValue": "80" }, { "argName": "scheme", "argValue": "http" }], "functionName": "ali_origin_port_scheme" }], "DomainNames": "example.com" }Contoh konfigurasi 2: Protokol asal mengikuti protokol yang digunakan oleh permintaan pengguna. Saat menggunakan HTTP untuk pengambilan asal, permintaan dikirim ke port 80 server asal. Saat menggunakan HTTPS untuk pengambilan asal, permintaan dikirim ke port 443 server asal.
{ "Functions":[{ "functionArgs": [{ "argName": "port", "argValue": "http:80|https:443" }, { "argName": "scheme", "argValue": "follow" }], "functionName":"ali_origin_port_scheme" }], "DomainNames":"example.com" }
origin_sni
Deskripsi: Mengonfigurasi SNI asal tertentu untuk server asal tertentu.
ID Fungsi (FunctionID/FuncId): 262.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
origin
String
Ya
Alamat server asal. Anda juga dapat tidak menentukan alamat server asal. Dalam hal ini, atur parameter origin ke all.
example.comsni_host
String
Ya
Nilai host SNI:
Anda dapat mengaturnya ke bidang statis, seperti
example.org.Untuk menggunakan alamat server asal sebagai SNI, atur ke
ali_follow_origin.Untuk menggunakan host asal sebagai SNI, atur ke
ali_follow_host.
example.orgkeepalive_sni
String
Tidak
Menentukan apakah akan mengaktifkan pencocokan SNI untuk koneksi persisten. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
CatatanJika diaktifkan, koneksi persisten yang berbeda digunakan untuk SNI asal yang berbeda.
/
Contoh konfigurasi 1: Saat permintaan pengguna diambil dari server asal
origin.example.com, nilai SNI yang digunakan adalahhost.example.com.{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "origin.example.com" }, { "argName": "sni_host", "argValue": "host.example.com" }], "functionName": "origin_sni" }], "DomainNames": "example.com" }Contoh konfigurasi 2: Permintaan pengguna ke semua server asal (diwakili oleh
all) menggunakan nilai SNI yang samahost.example.com.{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "sni_host", "argValue": "host.example.com" }], "functionName":"origin_sni" }], "DomainNames":"example.com" }Contoh konfigurasi 3: Permintaan pengguna ke semua server asal (diwakili oleh
all) menggunakan alamat server asal sebagai nilai SNI (diwakili oleh nilai parameterali_follow_origin).{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "sni_host", "argValue": "ali_follow_origin" }], "functionName": "origin_sni" }], "DomainNames": "example.com" }Contoh konfigurasi 4: Permintaan pengguna ke semua server asal (diwakili oleh
all) menggunakan host asal sebagai nilai SNI (diwakili oleh nilai parameterali_follow_host).{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "sni_host", "argValue": "ali_follow_host" }], "functionName": "origin_sni" }], "DomainNames": "example.com" }
source_group
Deskripsi: Pengaturan grup asal.
ID Fungsi (FunctionID/FuncId): 294.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
source_group_name
String
Ya
Nama grup asal. Dapat berisi huruf kecil, angka, dan garis bawah (_). Panjang maksimum adalah 128 byte.
example_origin
source_info
String
Ya
Informasi server asal. Format: OriginAddress_Priority_Weight_Port. Pisahkan nilai parameter yang berbeda dengan garis bawah (_). Pisahkan beberapa server asal dengan koma (,).
Alamat asal: Mendukung IPv4, IPv6, dan nama domain.
Prioritas: Mendukung nilai dari 1 hingga 65535. Nilai yang lebih kecil menunjukkan prioritas yang lebih tinggi.
Bobot: Mendukung nilai dari 1 hingga 100. CDN mendistribusikan permintaan ke server asal yang berbeda berdasarkan bobotnya.
Port: Mendukung nilai dari 1 hingga 65535.
Server asal tunggal: 192.168.0.1_10_33_80
Beberapa server asal: 192.168.0.1_10_33_80, 192.0.2.1_10_67_80
retry_times
Integer
Tidak
Jumlah percobaan ulang pengambilan asal.
3
retry_status_rule
Integer
Tidak
Kode status yang memicu percobaan ulang pengambilan asal. Saat ini, hanya lima nilai berikut yang didukung: 4xx, 5xx, 404, 404-or-5xx, dan 4xx-or-5xx. Konfigurasikan salah satunya.
404-or-5xx
failback_source
String
Tidak
Menentukan informasi dasar sumber cadangan. Nilai yang valid:
on: Jika semua server asal dalam grup asal tidak tersedia, alamat server asal di bagian Konfigurasi Dasar - Informasi Asal digunakan.
off: Jika semua server asal dalam grup asal tidak tersedia, kode status 5xx yang menunjukkan server asal tidak tersedia dikembalikan ke klien.
on
CatatanLogika percobaan ulang pengambilan asal:
Jumlah percobaan ulang: Jumlah kali percobaan ulang pengambilan asal.
Percobaan ulang hanya dilakukan antara alamat IP yang berbeda dalam grup asal yang sama.
Jumlah maksimum percobaan ulang sebenarnya dibatasi oleh jumlah alamat IP yang tersedia dalam grup asal yang sama.
Jika `retry_times` tidak dikonfigurasi, jumlah percobaan ulang default adalah minimum antara 3 dan jumlah alamat IP asal yang tersedia.
Jika `retry_times` dikonfigurasi, jumlah percobaan ulang adalah minimum antara nilai yang dikonfigurasi dan jumlah alamat IP asal yang tersedia.
Kode status untuk percobaan ulang: Node melakukan percobaan ulang ketika menerima kode status tertentu.
Jika `retry_status_rule` tidak dikonfigurasi, percobaan ulang dipicu secara default ketika server asal merespons dengan kode status 5xx.
Jika `retry_status_rule` dikonfigurasi, percobaan ulang failover dipicu berdasarkan kode status yang dikonfigurasi. Saat ini, hanya lima nilai berikut yang didukung: 4xx, 5xx, 404, 404-or-5xx, dan 4xx-or-5xx. Anda dapat mengonfigurasi salah satunya.
Setelah Anda mengonfigurasi `retry_status_rule`, kode status 5xx default tetap berlaku. Misalnya, jika Anda mengonfigurasi `404`, node CDN melakukan percobaan ulang ketika menerima kode status 404 atau 5xx.
Urutan percobaan ulang pengambilan asal: Percobaan ulang dilakukan dalam urutan prioritas menurun dari alamat IP dalam grup asal yang sama.
Skenario waktu tunggu pengambilan asal: Saat server asal secara aktif merespons dengan kode status percobaan ulang, node CDN melakukan percobaan ulang permintaan. Jika server asal tidak merespons dengan kode status percobaan ulang, node CDN mengikuti proses penanganan waktu tunggu dan melakukan percobaan ulang permintaan setelah periode waktu tunggu tercapai.
Waktu tunggu koneksi TCP asal: 10 detik.
Waktu tunggu penulisan asal: 30 detik. Ini adalah waktu tunggu untuk menulis konten setelah koneksi dibuat dengan server asal.
Waktu tunggu pembacaan asal: 30 detik. Waktu tunggu ini terjadi jika server asal gagal mengirim konten lengkap yang diminta oleh node CDN dalam periode yang ditentukan.
Logika probing asal:
Koneksi Lapisan 4 abnormal: Jika node CDN gagal membuat koneksi Lapisan 4 dengan alamat IP asal, alamat IP asal tersebut ditambahkan ke tabel mati. Permintaan pengambilan asal berikutnya tidak mengakses alamat IP asal ini. Node CDN kemudian melakukan probing alamat IP asal tersebut pada Lapisan 4 setiap 5 detik. Jika koneksi berhasil dibuat, alamat IP asal tersebut dipulihkan ke daftar yang tersedia.
Koneksi Lapisan 4 normal: Jika node CDN memiliki koneksi Lapisan 4 normal dengan alamat IP asal tetapi menerima kode status percobaan ulang (seperti 5xx) dari server asal, logika percobaan ulang dipicu. Namun, alamat IP asal tetap berada dalam daftar yang tersedia, dan permintaan akses berikutnya masih dikirim ke server asal ini berdasarkan bobotnya. Ini berarti bahwa jika koneksi Lapisan 4 normal, pengecualian Lapisan 7 tidak secara otomatis memblokir alamat IP asal. Untuk secara aktif memblokir alamat IP asal, Anda harus mengonfigurasi fitur pemantauan asal Lapisan 7 dan pemeriksaan kesehatan.
Contoh konfigurasi:
{ "Functions":[{ "functionArgs":[{ "argName":"source_group_name", "argValue":"test_yidong" },{ "argName":"source_info", "argValue":"192.168.0.1_10_33_80,192.0.2.1_10_67_80" },{ "argName":"retry_times", "argValue":"3" },{ "argName":"retry_status_rule", "argValue":"404,502" },{ "argName":"failback_source", "argValue":"on" }], "functionName":"source_group" }], "DomainNames":"example.com" }
ipv6_origin
Deskripsi: Mengonfigurasi pengambilan asal melalui IPv6. Untuk informasi selengkapnya, lihat Konfigurasi pengambilan asal melalui IPv6.
ID Fungsi (FunctionID/FuncId): 265
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pengambilan asal melalui IPv6. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
CatatanSetelah Anda mengaktifkan pengambilan asal melalui IPv6, CDN menyediakan layanan IPv6 untuk pengambilan asal.
Jika titik kehadiran CDN dan server asal memiliki alamat IPv6 yang tersedia, koneksi IPv6 dibuat.
Koneksi IPv4 dibuat dalam skenario berikut:
Titik kehadiran CDN tidak memiliki alamat IPv6 yang tersedia.
Server asal tidak memiliki alamat IPv6 yang tersedia.
Baik titik kehadiran CDN maupun server asal tidak memiliki alamat IPv6 yang tersedia.
on
follow
String
Ya
Menentukan apakah akan mengaktifkan fitur yang memungkinkan pengambilan asal mengikuti versi protokol IP permintaan klien. Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
CatatanSetelah Anda mengaktifkan fitur ini, pengambilan asal CDN akan mengikuti versi protokol IP yang digunakan oleh permintaan klien.
Jika permintaan klien menggunakan IPv6, CDN memprioritaskan pengambilan dari server asal IPv6. Jika tidak ada server asal IPv6 yang tersedia, server asal IPv4 digunakan.
Jika permintaan klien menggunakan IPv4, CDN memprioritaskan pengambilan dari server asal IPv4. Jika tidak ada server asal IPv4 yang tersedia, server asal IPv6 digunakan.
on
ipv6_v4_mix_used
String
Tidak
Menentukan apakah akan mengaktifkan "Pemungutan Suara Alamat IPv4/IPv6 Asal". Nilai yang valid:
on: aktifkan.
off: nonaktifkan.
CatatanFitur "Pemungutan Suara Alamat IPv4/IPv6 Asal" saling eksklusif dengan fitur "Pengambilan Asal melalui IPv6" dan "Ikuti Versi Protokol IP Klien". Setelah "Pemungutan Suara Alamat IPv4/IPv6 Asal" diaktifkan, kedua fitur lainnya menjadi tidak efektif.
Fitur "Pemungutan Suara Alamat IPv4/IPv6 Asal" memastikan bahwa permintaan pengambilan asal didistribusikan ke semua alamat server asal menggunakan metode pemungutan suara, terlepas dari apakah permintaan klien menggunakan IPv4 atau IPv6, dan terlepas dari jumlah alamat IPv4 atau IPv6 yang dimiliki server asal.
Jika bobot dikonfigurasi untuk alamat IPv4 dan IPv6, permintaan pengambilan asal didistribusikan sesuai dengan rasio bobot.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" },{ "argName": "follow", "argValue": "on" }], "functionName": "ipv6_origin" }], "DomainNames": "example.com" }
cos_auth
Deskripsi: Mengonfigurasi bucket autentikasi untuk Tencent Cloud COS.
ID Fungsi (FunctionID/FuncId): 288.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan bucket autentikasi Tencent Cloud COS. Nilai yang valid:
on: aktifkan.
Off: Menunjukkan shutdown sistem.
on
cos_valid_period
String
Tidak
Periode validitas tanda tangan autentikasi. Satuan: detik. Jika tidak ditentukan, nilai default adalah 3600 detik.
/
cos_secret_id
String
Ya
ID autentikasi untuk Tencent Cloud.
123456789
cos_secret_key
String
Ya
Kunci autentikasi untuk Tencent Cloud.
12345678
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "cos_secret_id", "argValue": "123456789" }, { "argName": "cos_secret_key", "argValue": "123456789" }], "functionName": "cos_auth" }], "DomainNames": "example.com" }
oss_auth
Deskripsi: Mengonfigurasi informasi bucket autentikasi agar CDN dapat mengambil konten dari OSS.
ID Fungsi (FunctionID/FuncId): 10.
Catatan: Setelah Anda mengonfigurasi server asal OSS untuk nama domain yang dipercepat, platform secara otomatis menambahkan konfigurasi `oss_auth`. Jangan menambahkan atau menghapus konfigurasi ini. Jika Anda menghapus konfigurasi ini, pengecualian penagihan untuk lalu lintas asal CDN-ke-OSS mungkin tidak berlaku. Jika autentikasi untuk bucket OSS pribadi diaktifkan, menghapus konfigurasi ini menyebabkan kegagalan autentikasi untuk permintaan pengambilan asal.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
oss_bucket_id
String
Ya
Nama domain publik bucket OSS.
cdn-test.oss-cn-hongkong.aliyuncs.com
oss_pri_buckets
String
Ya
Nama domain publik bucket OSS dan nama bucket-nya yang sesuai.
cdn-test.oss-cn-hongkong.aliyuncs.com|cdn-test
Contoh konfigurasi:
{ "Functions": [ { "ArgValue": "cdn-test.oss-cn-hongkong.aliyuncs.com", "ArgName": "oss_bucket_id" }, { "ArgValue": "cdn-test.oss-cn-hongkong.aliyuncs.com|cdn-test", "ArgName": "oss_pri_buckets" } ], "functionName": "oss_auth" }], "DomainNames": "example.com" }
Konfigurasi cache
filetype_based_ttl_set
Deskripsi: Mengonfigurasi waktu kedaluwarsa cache untuk file. Untuk informasi selengkapnya, lihat Konfigurasi waktu kedaluwarsa cache CDN.
ID Fungsi (FunctionID/FuncId): 6.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
ttl
Integer
Ya
Durasi cache. Satuan: detik. Nilai yang valid: 1 hingga 99999999 (lebih dari 3 tahun).
500000
file_type
String
Ya
Format file. Ini peka huruf besar/kecil. Pisahkan beberapa format file dengan koma (,). Contoh: jpg,txt.
jpg
weight
Integer
Tidak
Bobot. Nilai yang valid: 1 hingga 99.
CatatanNilai default adalah 1. Angka yang lebih besar menunjukkan prioritas yang lebih tinggi.
1
swift_origin_cache_high
String
Tidak
Memrioritaskan kebijakan cache server asal. Jika diaktifkan, ketika server asal merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server asal didahulukan. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_no_cache_low
String
Tidak
Mengabaikan header respons no-cache server asal. Jika diaktifkan, header respons berikut dari server asal diabaikan (semuanya menunjukkan tanpa caching):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_follow_cachetime
String
Tidak
Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN yang efektif akhir dikirim ke klien. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
force_revalidate
String
Tidak
Memaksa validasi konten ketika TTL adalah 0. Nilai yang valid:
on: aktifkan. Saat TTL adalah 0, konten dapat di-cache di titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.
off (default): nonaktifkan. Saat TTL adalah 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil konten lagi.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "file_type", "argValue": "jpg" }, { "argName": "weight", "argValue": "1" }, { "argName": "ttl", "argValue": "500000" }, { "argName": "swift_origin_cache_high", "argValue": "off" }, { "argName": "swift_no_cache_low", "argValue": "off" }, { "argName": "swift_follow_cachetime", "argValue": "off" },{ "argName": "force_revalidate", "argValue": "off" }], "functionName": "filetype_based_ttl_set" }], "DomainNames": "example.com" }
path_based_ttl_set
Mengonfigurasi waktu kedaluwarsa cache untuk folder. Untuk informasi selengkapnya, lihat Konfigurasi waktu kedaluwarsa cache CDN.
ID Fungsi (FunctionID/FuncId): 7.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
ttl
Integer
Ya
Durasi cache. Satuan: detik. Nilai yang valid: 1 hingga 99999999 (lebih dari 3 tahun).
500000
path
String
Ya
Direktori. Harus diawali dengan garis miring (/).
/example/demo
weight
Integer
Tidak
Bobot. Nilai yang valid: 1 hingga 99.
CatatanNilai default adalah 1. Angka yang lebih besar menunjukkan prioritas yang lebih tinggi.
1
swift_origin_cache_high
String
Tidak
Memrioritaskan kebijakan cache server asal. Jika diaktifkan, ketika server asal merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server asal didahulukan. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_no_cache_low
String
Tidak
Mengabaikan header respons no-cache server asal. Jika diaktifkan, header respons berikut dari server asal diabaikan (semuanya menunjukkan tanpa caching):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_follow_cachetime
String
Tidak
Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN yang efektif akhir dikirim ke klien. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
force_revalidate
String
Tidak
Memaksa validasi konten ketika TTL adalah 0. Nilai yang valid:
on: aktifkan. Saat TTL adalah 0, konten dapat di-cache di titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.
off (default): nonaktifkan. Saat TTL adalah 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil konten lagi.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "path", "argValue": "/example/demo" }, { "argName": "weight", "argValue": "1" }, { "argName": "ttl", "argValue": "500000" }, { "argName": "swift_origin_cache_high", "argValue": "off" }, { "argName": "swift_no_cache_low", "argValue": "off" }, { "argName": "swift_follow_cachetime", "argValue": "off" }, { "argName": "force_revalidate", "argValue": "off" }], "functionName": "path_based_ttl_set" }], "DomainNames": "example.com" }
filetype_force_ttl_code
Mengonfigurasi waktu kedaluwarsa kode status. Untuk informasi selengkapnya, lihat Konfigurasi waktu kedaluwarsa kode status.
ID Fungsi (FunctionID/FuncId): 63.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
file_type
String
Ya
Format file. Ini peka huruf besar/kecil. Pisahkan beberapa format file dengan koma (,). Contoh: jpg,txt.
jpg
code_string
String
Ya
Kode status dan durasi cache-nya. Satuan: detik. Nilai yang valid: 1 hingga 99999999 (lebih dari 3 tahun). Pisahkan beberapa entri dengan koma (,). Contoh: 302=0,301=0,4xx=2.
403=10
swift_code_origin_cache_high
String
Tidak
Memrioritaskan kebijakan cache server asal. Jika diaktifkan, ketika server asal merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server asal didahulukan. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_code_no_cache_low
String
Tidak
Mengabaikan header respons no-cache server asal. Jika diaktifkan, header respons berikut dari server asal diabaikan (semuanya menunjukkan tanpa caching):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_code_follow_cachetime
String
Tidak
Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN yang efektif akhir dikirim ke klien. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
force_revalidate
String
Tidak
Memaksa validasi konten ketika TTL adalah 0. Nilai yang valid:
on: aktifkan. Saat TTL adalah 0, konten dapat di-cache di titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.
off (default): nonaktifkan. Saat TTL adalah 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil konten lagi.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "file_type", "argValue": "jpg" }, { "argName": "code_string", "argValue": "403=10" }, { "argName": "swift_code_origin_cache_high", "argValue": "off" }, { "argName": "swift_code_no_cache_low", "argValue": "off" }, { "argName": "swift_code_follow_cachetime", "argValue": "off" }, { "argName": "force_revalidate", "argValue": "off" }], "functionName": "filetype_force_ttl_code" }], "DomainNames": "example.com" }
path_force_ttl_code
Deskripsi: Fitur ini memungkinkan Anda mengonfigurasi waktu kedaluwarsa kode status untuk path. Untuk informasi selengkapnya, lihat Konfigurasi waktu kedaluwarsa kode status.
ID Fungsi (FunctionID/FuncId): 65.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
path
String
Ya
Direktori. Harus diawali dengan garis miring (/). Contoh: /image.
/example/demo
code_string
String
Ya
Kode status dan durasi cache-nya. Satuan: detik. Nilai yang valid: 1 hingga 99999999 (lebih dari 3 tahun). Pisahkan beberapa entri dengan koma (,). Contoh: 302=0,301=0,4xx=2.
403=10,404=15
swift_code_origin_cache_high
String
Tidak
Memrioritaskan kebijakan cache server asal. Jika diaktifkan, ketika server asal merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server asal didahulukan. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_code_no_cache_low
String
Tidak
Mengabaikan header respons no-cache server asal. Jika diaktifkan, header respons berikut dari server asal diabaikan (semuanya menunjukkan tanpa caching):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
swift_code_follow_cachetime
String
Tidak
Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN yang efektif akhir dikirim ke klien. Nilai yang valid:
on: aktifkan
off (default): nonaktifkan
off
force_revalidate
String
Tidak
Memaksa validasi konten ketika TTL adalah 0. Nilai yang valid:
on: aktifkan. Saat TTL adalah 0, konten dapat di-cache di titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.
off (default): nonaktifkan. Saat TTL adalah 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil konten lagi.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "path", "argValue": "/example/demo" }, { "argName": "code_string", "argValue": "403=10,404=15" }, { "argName": "swift_code_origin_cache_high", "argValue": "off" }, { "argName": "swift_code_no_cache_low", "argValue": "off" }, { "argName": "swift_code_follow_cachetime", "argValue": "off" }, { "argName": "force_revalidate", "argValue": "off" }], "functionName": "path_force_ttl_code" }], "DomainNames": "example.com" }
default_ttl_code
Deskripsi: Mengonfigurasi waktu kedaluwarsa kode status (Prioritas Asal). Untuk petunjuk konfigurasi konsol, lihat Konfigurasi Waktu Kedaluwarsa Kode Status (Prioritas Asal).
ID Fungsi (FunctionID/FuncId): 207.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
default_ttl_code
String
Ya
Kode status dan durasi cache-nya. Satuan: detik. Nilai yang valid: 1 hingga 99999999 (lebih dari 3 tahun). Pisahkan beberapa kode status dengan koma (,).
4xx=3,200=3600,5xx=1
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "default_ttl_code", "argValue": "4xx=3,200=3600,5xx=1" }], "functionName": "default_ttl_code" }], "DomainNames": "example.com" }
set_resp_header
Deskripsi: Mengonfigurasi header respons HTTP kustom. Untuk informasi selengkapnya, lihat Modifikasi header respons arah keluar.
ID Fungsi (FunctionID/FuncId): 27.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
key
String
Ya
Header respons.
Cache-Control
value
String
Ya
Nilai header respons. Pisahkan beberapa nilai dengan koma (,).
CatatanJika Anda ingin menghapus header respons, atur nilainya ke null.
no-cache
header_operation_type
String
Tidak
Operasi header permintaan. Nilai yang valid:
add: Menambahkan item.
Delete: hapus.
modify: Melakukan perubahan pada item.
Rewrite: ganti.
add
duplicate
String
Tidak
Menentukan apakah diizinkan menambahkan header permintaan dengan nama yang sudah ada. Parameter ini wajib saat header_operation_type diatur ke add.
on: Mengizinkan duplikat.
off: Tidak mengizinkan duplikat.
off
header_source
String
Tidak
Nilai parameter yang akan diganti. Parameter ini wajib saat header_operation_type diatur ke rewrite. Nilainya bisa berupa ekspresi reguler.
value1
header_destination
String
Tidak
Nilai baru untuk parameter. Atur parameter ini saat header_operation_type diatur ke rewrite.
value123
match_all
String
Tidak
Menentukan pola pencocokan yang digunakan saat header_operation_type diatur ke rewrite untuk operasi penggantian:
on: Mengganti semua nilai yang cocok.
off: Mengganti hanya nilai pertama yang cocok.
/
access_origin_control
String
Tidak
Verifikasi lintas domain:
on: Mengaktifkan verifikasi lintas domain di titik kehadiran CDN (PoPs).
off: Menonaktifkan fitur.
/
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "header_operation_type", "argValue": "add" }, { "argName": "key", "argValue": "Cache-Control" }, { "argName": "value", "argValue": "no-cache" }, { "argName": "duplicate", "argValue": "off" }], "functionName": "set_resp_header" }], "DomainNames": "example.com" }
error_page
Deskripsi: Mengonfigurasi halaman kustom. Untuk informasi selengkapnya, lihat Konfigurasi halaman kustom.
ID Fitur (FunctionID/FuncId): 15.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
error_code
Integer
Ya
Kode error.
404
rewrite_page
String
Ya
Halaman pengalihan.
http://example.aliyundoc.com/error404.htmlContoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "error_code", "argValue": "404" }, { "argName": "rewrite_page", "argValue": "http://example.aliyundoc.com/error404.html" }], "functionName": "error_page" }], "DomainNames": "example.com" }
host_redirect
Deskripsi: Mengonfigurasi aturan penulisan ulang URI. Untuk informasi selengkapnya, lihat Tulis ulang URL akses.
ID Fungsi (FuncId): 43.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
regex
String
Ya
URI yang akan ditulis ulang. URI harus diawali dengan garis miring (/) dan tidak boleh menyertakan awalan http:// atau nama domain. Ekspresi Reguler Kompatibel Perl (PCRE) didukung. Misalnya, ^/hello$.
^/hello$
replacement
String
Ya
Jika aturan eksekusi diatur ke "Break", hanya path yang diawali dengan garis miring (/) yang didukung. Path tidak boleh menyertakan awalan protokol atau nama domain. Jika aturan eksekusi diatur ke "Redirect", path dapat menyertakan awalan protokol dan nama domain. PCRE didukung. Misalnya, gunakan $1 dan $2 untuk menangkap string dalam tanda kurung di path yang ingin Anda tulis ulang.
/hello/test
flag
String
Tidak
Menentukan tindakan yang dilakukan oleh titik kehadiran CDN (PoP) setelah URI ditulis ulang. Nilai yang valid:
Kosong: Nilai default. Ini berarti parameter flag tidak dilewatkan. Jika Anda mengonfigurasi beberapa aturan dan URL permintaan cocok dengan suatu aturan, PoP terus mencocokkan aturan berikutnya setelah aturan saat ini dieksekusi.
break: Jika URL permintaan cocok dengan suatu aturan, permintaan ditulis ulang ke URL tujuan. Parameter dalam URI asli tidak dimodifikasi. Setelah aturan saat ini dieksekusi, PoP berhenti mencocokkan aturan lainnya.
redirect: Jika URL permintaan cocok dengan suatu aturan, permintaan dialihkan ke URL tujuan dengan kode status 302. PoP mengembalikan URL tujuan sebagai informasi Lokasi ke klien. Parameter dalam URI asli tidak dimodifikasi. Setelah aturan saat ini dieksekusi, PoP terus mencocokkan aturan berikutnya.
enhance_break: Mirip dengan break, tetapi tindakan ini memodifikasi seluruh URL, termasuk parameternya.
enhance_redirect: Mirip dengan redirect, tetapi tindakan ini memodifikasi seluruh URL, termasuk parameternya.
CatatanAturan eksekusi yang berbeda menggunakan metode penulisan ulang yang berbeda. Mereka juga berbeda dalam apakah URL yang ditulis ulang mendukung nama domain dan protokol lain:
Kosong, break, dan enhance_break langsung menulis ulang URL permintaan. Mereka tidak mendukung penulisan ulang ke nama domain atau protokol lain. Misalnya, Anda tidak dapat menulis ulang URL dari HTTP ke HTTPS.
redirect dan enhance_redirect menggunakan metode pengalihan 302 untuk mengimplementasikan penulisan ulang URL. Metode ini mendukung penulisan ulang ke nama domain lain dan juga ke protokol lain:
Alamat Lokasi 302 dapat diatur ke nama domain selain nama domain yang dipercepat saat ini. Misalnya, URL asli yang menggunakan nama domain example.com dapat ditulis ulang untuk menggunakan nama domain baru, seperti aliyundoc.com.
Alamat Lokasi 302 mendukung protokol lain. Misalnya, URL asli yang menggunakan protokol HTTP dapat ditulis ulang untuk menggunakan protokol HTTPS.
redirect
rewrite_method
String
Tidak
Metode pengalihan. Kode status yang didukung adalah 302, 303, dan 307:
302: Metode pengalihan default. Metode permintaan GET tidak berubah. Metode permintaan lain mungkin berubah menjadi GET.
303: Metode permintaan GET tidak berubah. Metode permintaan lain berubah menjadi GET. Isi pesan hilang.
307: Metode permintaan dan isi pesan tidak berubah.
302
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "flag", "argValue": "redirect" }, { "argName": "regex", "argValue": "^/hello$" }, { "argName": "replacement", "argValue": "/hello/test" }, { "argName": "rewrite_method", "argValue": "302" }], "functionName": "host_redirect" }], "DomainNames": "example.com" }
self_defined_cachekey
Mengonfigurasi CacheKey kustom. Untuk informasi selengkapnya, lihat CacheKey Kustom.
ID Fungsi: 227.
Parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
uri
Array of String
Tidak
Menulis ulang URI asal ke URI tujuan dan menggunakan URI tujuan sebagai kunci cache.
uri_to_rewrite: URI asal.
ai_uri_regex: URI tujuan.
[{"uri_to_rewrite":"/hello","ai_uri_regex":"/hello/test"}]args
Array of String
Tidak
Menambahkan, menghapus, memodifikasi, atau menyimpan parameter dalam permintaan dan menyimpan hasilnya sebagai kunci cache. Nilainya terdiri dari parameter berikut:
args_operation_type: Jenis operasi yang dilakukan pada parameter. Nilai yang valid adalah add, delete, modify, dan keep.
args: Nilai parameter untuk operasi.
[{"args":"test=123","args_operation_type":"add"}]headers
String
Tidak
Menambahkan beberapa header HTTP, dipisahkan dengan spasi, ke kunci cache.
example
variable
Array of String
Tidak
Variabel kustom menggunakan ekspresi reguler untuk mengekstrak bidang apa pun dari parameter permintaan, header HTTP, cookie, atau URI dan menambahkannya ke kunci cache.
[]
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "uri", "argValue": [{ "uri_to_rewrite": "/hello", "ai_uri_regex": "/hello/test" }] }, { "argName": "args", "argValue": [{ "args": "test=123", "args_operation_type": "add" }] }, { "argName": "headers", "argValue": "" }, { "argName": "variable", "argValue": [] }], "functionName": "self_defined_cachekey" }], "DomainNames": "example.com" }
rewrite_host
Deskripsi: Cache bersama.
ID Fungsi (FunctionID/FuncId): 54.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
share_host
String
Ya
Nama domain tujuan yang dapat berbagi cache dengan nama domain saat ini. Konfigurasi ini tidak memodifikasi header Host untuk permintaan pengambilan asal. Saat sumber daya yang di-cache diambil, sistem menggunakan nilai share_host untuk menghasilkan kunci cache.
example.com
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "share_host", "argValue": "example.com" }], "functionName": "rewrite_host" }], "DomainNames": "example.com" }
serving_stale_content
Deskripsi: Menyajikan konten kedaluwarsa dari cache ketika server asal tidak tersedia atau mengembalikan error.
ID Fungsi: 260
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
origin_error_status_code
String
Tidak
Menentukan kode status error server asal yang memicu fitur ini.
Deskripsi fitur: Menentukan kode status dari server asal yang memicu fitur ini.
Nilai default: Tidak ditentukan. Secara default, error server asal mencakup timeout dan semua kode status 5xx.
Konfigurasi: Masukkan 4xx atau 5xx untuk pencocokan wildcard. Anda juga dapat memasukkan kode status spesifik, seperti 502 atau 504, untuk pencocokan eksak. Untuk memasukkan beberapa kode status, pisahkan dengan koma.
502
extend_expiration_time
Integer
Tidak
Waktu maksimum untuk menyimpan konten cache setelah kedaluwarsa.
Deskripsi fitur: Durasi maksimum untuk menyimpan cache setelah kedaluwarsa.
Nilai default untuk waktu perpanjangan kedaluwarsa adalah 1 jam.
Masukkan bilangan bulat 1 atau lebih besar. Satuan adalah detik.
60
origin_first
String
Tidak
Menentukan apakah akan memprioritaskan kebijakan cache dari server asal.
Deskripsi: Jika parameter ini diatur ke on, kebijakan asal diprioritaskan. Jika server asal mengembalikan file dengan header
Cache-Control: stale-if-error=xx, waktu yang ditentukan oleh parameterstale-if-errordigunakan sebagai waktu perpanjangan kedaluwarsa.Default: Parameter ini kosong secara default, yang setara dengan off. Dalam hal ini, waktu perpanjangan kedaluwarsa diatur oleh parameter extend_expiration_time.
Konfigurasi: Nilai yang valid adalah
on(diaktifkan) danoff(dinonaktifkan).
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "origin_error_status_code", "argValue": "502" }, { "argName": "extend_expiration_time", "argValue": "60" }, { "argName": "origin_first", "argValue": "off" }], "functionName": "serving_stale_content" }], "DomainNames": "example.com" }
Konfigurasi HTTPS
https_option
Deskripsi: Mengonfigurasi parameter HTTPS dasar. Untuk informasi selengkapnya, lihat Konfigurasi sertifikat HTTPS, Konfigurasi HTTP/2, dan Konfigurasi OCSP Stapling.
ID Fungsi (FunctionID/FuncId): 78.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
http2
String
Tidak
Menentukan apakah akan mengaktifkan HTTP/2.
on: Mengaktifkan pengaturan.
off: Status shutdown.
on
ocsp_stapling
String
Tidak
Menentukan apakah akan mengaktifkan fitur Protokol Status Sertifikat Online (OCSP).
on: Mengaktifkan fitur.
off: Menunjukkan shutdown.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "http2", "argValue": "on" }, { "argName": "ocsp_stapling", "argValue": "on" }], "functionName": "https_option" }], "DomainNames": "example.com" }
http_force
Deskripsi: Mengonfigurasi pengalihan paksa ke HTTP. Untuk informasi selengkapnya, lihat Konfigurasi pengalihan paksa.
Fitur pengalihan paksa ke HTTP dan fitur pengalihan paksa ke HTTPS (fungsi: https_force, ID fungsi: 44) saling eksklusif. Jika Anda telah mengonfigurasi salah satu fitur ini, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Perhatikan bahwa fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fungsi (FunctionID/FuncId): 45.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
enable
String
Ya
Paksa pengalihan HTTP:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
http_rewrite
String
Tidak
Metode pengalihan. Kode status yang valid adalah 301 dan 308.
301: Metode permintaan GET tidak berubah. Metode permintaan lain mungkin berubah menjadi GET.
308: Metode permintaan dan isi pesan tidak berubah.
301
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "http_rewrite", "argValue": "301" }], "functionName": "http_force" }], "DomainNames": "example.com" }
https_force
Anda dapat mengonfigurasi pengalihan paksa ke HTTPS. Untuk informasi selengkapnya, lihat Konfigurasi pengalihan paksa.
Catatan tentang konflik fitur: Fitur pengalihan paksa ke HTTPS dan fitur pengalihan paksa ke HTTP (fungsi: http_force, ID fungsi: 45) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Perhatikan bahwa fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fungsi (FunctionID/FuncId): 44.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pengalihan paksa ke HTTPS.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
https_rewrite
String
Tidak
Metode pengalihan. Kode status yang valid adalah 301 dan 308.
301: Metode permintaan GET tidak berubah. Metode permintaan lain mungkin berubah menjadi GET.
308: Metode permintaan dan isi pesan tidak berubah.
301
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "https_rewrite", "argValue": "301" }], "functionName": "https_force" }], "DomainNames": "example.com" }
https_tls_version
Deskripsi: Mengonfigurasi versi TLS. Untuk informasi selengkapnya, lihat Konfigurasi Versi TLS dan Paket Sandi.
ID Fungsi (FunctionID/FuncId): 110.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
tls10
String
Tidak
Menentukan apakah akan mengaktifkan TLSv1.0.
on (default): Mengaktifkan versi.
Off: Shutdown.
on
tls11
String
Tidak
Menentukan apakah akan mengaktifkan TLSv1.1.
on (default): Mengaktifkan versi.
off: Menunjukkan status shutdown.
on
tls12
String
Tidak
Menentukan apakah akan mengaktifkan TLSv1.2.
on (default): Mengaktifkan versi.
Off: Shut down.
on
tls13
String
Tidak
Menentukan apakah akan mengaktifkan TLSv1.3.
On (Default)
off: Menunjukkan shutdown.
on
ciphersuitegroup
String
Tidak
Grup paket sandi.
all (default): Semua paket sandi.
strict: Paket sandi kuat.
custom: Paket sandi kustom.
all
String
Tidak
Paket sandi. Parameter ini digunakan saat ciphersuitegroup diatur ke custom. Anda dapat menentukan beberapa paket sandi. Pisahkan dengan koma (,).
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
Contoh konfigurasi:
Konfigurasi default: Aktifkan TLSv1.0, TLSv1.1, dan TLSv1.2, dan gunakan semua paket sandi.
{ "Functions": [{ "functionArgs": [ { "ArgValue": "on", "ArgName": "tls10" }, { "ArgValue": "on", "ArgName": "tls11" }, { "ArgValue": "on", "ArgName": "tls12" }, { "ArgValue": "off", "ArgName": "tls13" }, { "ArgValue": "all", "ArgName": "ciphersuitegroup" } ], "functionName": "https_tls_version" }], "DomainNames": "example.com" }Aktifkan TLSv1.2 dan TLSv1.3, dan gunakan paket sandi kuat.
{ "Functions": [{ "functionArgs": [ { "ArgValue": "off", "ArgName": "tls10" }, { "ArgValue": "off", "ArgName": "tls11" }, { "ArgValue": "on", "ArgName": "tls12" }, { "ArgValue": "on", "ArgName": "tls13" }, { "ArgValue": "strict", "ArgName": "ciphersuitegroup" } ], "functionName": "https_tls_version" }], "DomainNames": "example.com" }Aktifkan TLSv1.2 dan TLSv1.3, dan gunakan paket sandi kustom.
{ "Functions": [{ "functionArgs": [ { "ArgValue": "off", "ArgName": "tls10" }, { "ArgValue": "off", "ArgName": "tls11" }, { "ArgValue": "on", "ArgName": "tls12" }, { "ArgValue": "on", "ArgName": "tls13" }, { "ArgValue": "custom", "ArgName": "ciphersuitegroup" }, { "ArgValue": "TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", "ArgName": "ciphersuite" } ], "functionName": "https_tls_version" }], "DomainNames": "example.com" }
https_client_cert
Deskripsi: Mengonfigurasi sertifikat autentikasi klien. Untuk informasi selengkapnya, lihat Sertifikat autentikasi klien.
ID Fungsi (FunctionID/FuncId): 111.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
client_certificate_verify
String
Ya
Menentukan apakah akan mengaktifkan autentikasi sertifikat klien.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
onclient_certificate
String
Ya
Sertifikat klien yang ditandatangani sendiri (kunci publik). Sertifikat CA harus memenuhi persyaratan format berikut:
Dimulai dengan
-----BEGIN CERTIFICATE-----dan diakhiri dengan-----END CERTIFICATE-----.
-----BEGIN PUBLIC KEY-----***********-----END PUBLIC KEY-----client_verify_depth
String
Tidak
Kedalaman autentikasi, juga dikenal sebagai kedalaman rantai sertifikat. Parameter ini menentukan jumlah level sertifikat dalam rantai kepercayaan yang digunakan untuk mengautentikasi sertifikat klien. Kedalaman adalah jumlah level dari sertifikat klien itu sendiri kembali ke sertifikat CA root. Nilai default adalah 1.
1Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "client_certificate_verify", "argValue": "on" }, { "argName": "client_certificate", "argValue": "-----BEGIN PUBLIC KEY-----***********-----END PUBLIC KEY-----" }], "functionName": "https_client_cert" }], "DomainNames": "example.com" }
HSTS
Deskripsi: Fitur ini digunakan untuk mengonfigurasi HTTP Strict Transport Security (HSTS). Untuk petunjuk konfigurasi terperinci, lihat Konfigurasi HSTS.
ID Fungsi (FunctionID/FuncId): 112.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
enabled
String
Ya
Menentukan apakah akan mengaktifkan HSTS.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
https_hsts_max_age
Integer
Ya
Waktu kedaluwarsa dalam detik.
CatatanNilai 5184000 detik (60 hari) direkomendasikan.
5184000
https_hsts_include_subdomains
String
Tidak
Menentukan apakah akan menyertakan subdomain dalam header HSTS. Nilai yang valid adalah on dan off.
CatatanSebelum mengaktifkan parameter ini, pastikan HTTPS diaktifkan untuk semua subdomain dari nama domain yang dipercepat. Jika tidak, subdomain akan menjadi tidak dapat diakses setelah secara otomatis dialihkan ke HTTPS.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enabled", "argValue": "on" }, { "argName": "https_hsts_max_age", "argValue": "5184000" }, { "argName": "https_hsts_include_subdomains", "argValue": "off" }], "functionName": "HSTS" }], "DomainNames": "example.com" }
Kontrol akses
referer_white_list_set
Deskripsi: Mengonfigurasi daftar putih Referer. Untuk informasi selengkapnya, lihat Konfigurasi daftar hitam/putih Referer.
Catatan tentang konflik fitur: Fitur daftar putih Referer dan fitur daftar hitam Referer (fungsi: referer_black_list_set, ID fungsi: 5) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Perhatikan bahwa fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fitur (FunctionID/FuncId): 1.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
refer_domain_allow_list
String
Ya
Daftar putih. Pisahkan beberapa nama domain dengan koma (,).
example.aliyundoc.com,demo.aliyundoc.comallow_empty
String
Tidak
Menentukan apakah akan mengizinkan permintaan dengan header Referer kosong untuk mengakses sumber daya CDN. Nilai yang valid:
on: Mengizinkan akses.
off (default): Menolak akses.
off
redirect_url
String
Tidak
URL pengalihan. Jika header Referer permintaan pengguna tidak cocok dengan daftar putih, permintaan diblokir. Alih-alih mengembalikan kode status 403, CDN mengembalikan kode status 302 dan header Lokasi. Parameter ini menentukan nilai header Lokasi. URL harus diawali dengan `http://` atau `https://`.
http://www.example.comdisable_ast
String
Tidak
Gunakan pola pencocokan eksak untuk menentukan apakah nama domain dalam daftar putih memerlukan pencocokan eksak. Jika opsi ini dipilih (on), hanya pencocokan nama domain eksak yang diizinkan.
Jika nilainya on:
Pencocokan eksak didukung.
Jika Anda memasukkan
example.comdalam daftar putih, ini cocok denganexample.com.Jika Anda memasukkan
a*b.example.comdalam daftar putih, ini cocok dengana<any characters>b.example.com.
Pencocokan akhiran tidak didukung.
Jika nilainya off (default):
Pencocokan eksak tidak didukung.
Pencocokan akhiran didukung.
Jika Anda memasukkan
example.comdalam daftar putih, ini cocok denganexample.comdan<any characters>.example.com.Jika Anda memasukkan
a*b.example.comdalam daftar putih, ini cocok dengana<any characters>b.example.comdan<any characters>.a<any characters>b.example.com.
off
ignore_scheme
String
Tidak
Menentukan apakah akan mengabaikan skema dalam header Referer. Jika fitur ini diaktifkan, header Referer tanpa protokol HTTP atau HTTPS tetap dianggap valid. Contoh:
Jika nilainya `on`, format Referer adalah sebagai berikut:
referer: www.example.comJika nilainya `off` (default), format Referer adalah sebagai berikut:
referer: https://www.example.com
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "allow_empty", "argValue": "off" }, { "argName": "refer_domain_allow_list", "argValue": "example.aliyundoc.com,demo.aliyundoc.com" }], "functionName": "referer_white_list_set" }], "DomainNames": "example.com" }
referer_black_list_set
Anda dapat menggunakan fitur ini untuk mengonfigurasi daftar hitam Referer. Untuk informasi selengkapnya, lihat Konfigurasi Daftar Hitam/Putih Referer.
Catatan tentang konflik fitur: Fitur daftar hitam Referer dan fitur daftar putih Referer (fungsi: referer_white_list_set, ID fungsi: 1) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Perhatikan bahwa fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fitur (FunctionID/FuncId): 5.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
refer_domain_deny_list
String
Ya
Daftar hitam. Pisahkan beberapa nama domain dengan koma (,).
example.aliyundoc.com,demo.aliyundoc.comallow_empty
String
Tidak
Menentukan apakah akan mengizinkan permintaan dengan header Referer kosong untuk mengakses sumber daya CDN:
on: Mengizinkan akses.
off: Menolak akses.
off
redirect_url
String
Tidak
URL pengalihan. Jika header Referer permintaan pengguna cocok dengan daftar hitam, permintaan diblokir. Alih-alih mengembalikan kode status 403, CDN mengembalikan kode status 302 dan header Lokasi. Parameter ini menentukan nilai header Lokasi. URL harus diawali dengan `http://` atau `https://`.
http://www.example.comdisable_ast
String
Tidak
Menentukan apakah akan mengaktifkan pencocokan eksak untuk nama domain dalam daftar hitam. Jika Anda mengatur parameter ini ke `on`, pencocokan eksak diaktifkan.
Jika nilainya `on`:
Pencocokan eksak didukung.
Jika Anda menambahkan
example.comke daftar hitam, ini cocok denganexample.com.Jika Anda menambahkan
a*b.example.comke daftar hitam, ini cocok dengana<any string>b.example.com.
Pencocokan akhiran tidak didukung.
Jika nilainya `off` (default):
Pencocokan eksak tidak didukung.
Pencocokan akhiran didukung.
Jika Anda menambahkan
example.comke daftar hitam, ini cocok denganexample.comdan<any string>.example.com.Jika Anda menambahkan
a*b.example.comke daftar hitam, ini cocok dengana<any string>b.example.comdan<any string>.a<any string>b.example.com.
off
ignore_scheme
String
Tidak
Menentukan apakah akan mengabaikan skema dalam header Referer. Jika fitur ini diaktifkan, header Referer tanpa protokol HTTP atau HTTPS tetap dianggap valid. Contoh:
Jika nilainya `on`, format Referer adalah sebagai berikut:
referer: www.example.comJika nilainya `off` (default), format Referer adalah sebagai berikut:
referer: https://www.example.com
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "allow_empty", "argValue": "off" }, { "argName": "refer_domain_deny_list", "argValue": "example.aliyundoc.com,demo.aliyundoc.com" }], "functionName": "referer_black_list_set" }], "DomainNames": "example.com" }
aliauth
Deskripsi: Mengonfigurasi penandatanganan URL. Untuk informasi selengkapnya, lihat Konfigurasi penandatanganan URL.
ID Fitur (FunctionID/FuncId): 25.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
auth_m3u8
String
Tidak
Menentukan apakah akan menulis ulang konten file M3U8. Fitur ini menambahkan informasi penandatanganan ke file TS dalam file M3U8 untuk mencegah kegagalan akses. Nilai yang valid adalah `on` (default) dan `off`.
on
auth_type
String
Ya
Jenis penandatanganan. Nilai yang valid:
no_auth: Tidak ada penandatanganan.
type_a: Penandatanganan Tipe A.
type_b: Penandatanganan Tipe B.
type_c: Penandatanganan Tipe C.
type_d: Penandatanganan Tipe D.
type_e: Penandatanganan Tipe E.
type_f: Penandatanganan Tipe F.
type_a
auth_key1
String
Ya
Kunci enkripsi 1. Kunci harus terdiri dari 16 hingga 128 karakter dan dapat berisi huruf besar, huruf kecil, dan angka.
1234567890123456789
auth_key2
String
Tidak
Kunci enkripsi 2. Kunci harus terdiri dari 16 hingga 128 karakter dan dapat berisi huruf besar, huruf kecil, dan angka.
1234567890123456789
ali_auth_delta
Integer
Tidak
Periode validitas URL yang ditandatangani. Default: 1800. Satuan: detik.
1800
req_auth_ip_white
String
Tidak
Daftar putih alamat IP. Alamat IP dalam daftar ini tidak dikenai penandatanganan.
Anda dapat memasukkan beberapa alamat IP. Pisahkan dengan koma.
192.168.0.1
req_auth_ip_acl_xfwd
String
Tidak
Metode untuk mengambil alamat IP klien untuk daftar putih. Nilai yang valid:
on: Ini adalah mode default. Dalam mode ini, alamat IP pertama di sebelah kiri dalam header X-Forwarded-For diperiksa. Alamat IP ini adalah alamat IP asal klien.
off: Dalam mode ini, alamat IP yang digunakan oleh klien untuk membuat koneksi dengan titik kehadiran CDN (PoP) diperiksa.
all: Kedua alamat IP berikut diperiksa:
Alamat IP pertama di sebelah kiri dalam header X-Forwarded-For, yaitu alamat IP asal klien.
Alamat IP yang digunakan oleh klien untuk membuat koneksi dengan PoP CDN.
all
sign_param
String
Tidak
Nama parameter penandatanganan. Parameter ini hanya valid ketika `auth_type` diatur ke `type_f`.
sign
time_param
String
Tidak
Nama parameter timestamp. Parameter ini hanya valid ketika `auth_type` diatur ke `type_f`.
time
time_format
String
Tidak
Format timestamp. Parameter ini hanya valid ketika `auth_type` diatur ke `type_f`.
dec: Desimal
hex: Heksadesimal
hec
path_encoding
String
Tidak
Saklar pengkodean URL. Nilai yang valid adalah `on` dan `off`. Parameter ini hanya valid ketika `auth_type` diatur ke `type_f`.
on
Contoh konfigurasi:
Penandatanganan Tipe A
{ "Functions": [{ "functionArgs": [{ "argName": "auth_type", "argValue": "type_a" }, { "argName": "auth_key1", "argValue": "1234567890123456789" }, { "argName": "auth_key2", "argValue": "1234567890123456789" }, { "argName": "ali_auth_delta", "argValue": 1800 }, { "argName": "req_auth_ip_white", "argValue": "192.168.0.1" }, { "argName": "req_auth_ip_acl_xfwd", "argValue": "all" }], "functionName": "aliauth" }], "domainNames": "example.com" }Penandatanganan Tipe F
{ "Functions": [{ "functionArgs": [{ "argName": "auth_type", "argValue": "type_f" },{ "argName": "auth_key1", "argValue": "1234567890123456789" },{ "argName": "auth_key2", "argValue": "1234567890123456789" },{ "argName": "ali_auth_delta", "argValue": 1800 },{ "argName": "sign_param", "argValue": "sign" },{ "argName": "time_param", "argValue": "time", },{ "argName": "time_format", "argValue": "hec" },{ "argName": "path_encoding", "argValue": "on" }], "functionName": "aliauth" }], "domainNames": "example.com" }
cdn_remote_auth
Deskripsi: Mengonfigurasi autentikasi jarak jauh. Untuk informasi selengkapnya, lihat Konfigurasi autentikasi jarak jauh.
ID Fitur (FunctionID/FuncId): 258.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan autentikasi jarak jauh:
on: Aktifkan.
off: Nonaktifkan.
on
remote_auth_addr
String
Ya
Alamat server autentikasi. Format:
https://cdn.aliyun.com/authatauhttp://10.10.10.10/auth.https://example.aliyundoc.com/auth
remote_auth_method
String
Ya
Metode permintaan. GET, POST, dan HEAD didukung.
get
remote_auth_type
String
Ya
Jenis file yang memerlukan autentikasi. `all` menunjukkan semua jenis file. Untuk menentukan beberapa jenis file, pisahkan dengan tanda vertikal (|). Jenis file peka huruf besar/kecil. Misalnya, `jpg` tidak sama dengan `JPG`.
all
remote_auth_reserve_args
String
Ya
Parameter yang dipertahankan dalam permintaan. Untuk menentukan beberapa parameter, pisahkan dengan tanda vertikal (|). Parameter tidak peka huruf besar/kecil. Misalnya, `key` sama dengan `KEY`.
`all`: Mempertahankan semua parameter.
`ali_delete_all_args`: Menghapus semua parameter URL.
all
remote_auth_custom_args
String
Tidak
Parameter kustom yang ditambahkan. Untuk menentukan beberapa parameter, pisahkan dengan tanda vertikal (|). Parameter peka huruf besar/kecil. Misalnya, `key` tidak sama dengan `KEY`.
empty
remote_auth_reserve_header
String
Ya
Header permintaan yang dipertahankan. Untuk menentukan beberapa header, pisahkan dengan tanda vertikal (|). Header tidak peka huruf besar/kecil. Misalnya, `http_remote_addr` sama dengan `HTTP_Remote_Addr`.
`all`: Mempertahankan semua header permintaan.
`ali_delete_all_headers`: Menghapus semua header permintaan.
all
remote_auth_custom_header
String
Tidak
Header permintaan kustom yang ditambahkan. Untuk menentukan beberapa header, pisahkan dengan tanda vertikal (|). Header tidak peka huruf besar/kecil. Misalnya, `http_remote_addr` sama dengan `HTTP_Remote_Addr`.
empty
remote_auth_success_code
Integer
Ya
Kode status sukses. Ini adalah kode status yang dikembalikan server autentikasi ke CDN setelah autentikasi berhasil. Contoh: 200. Anda dapat menentukan beberapa kode status. Pisahkan dengan koma.
200
remote_auth_fail_code
Integer
Ya
Kode status kegagalan. Ini adalah kode status yang dikembalikan server autentikasi ke CDN setelah autentikasi gagal. Contoh: 403. Anda dapat menentukan beberapa kode status. Pisahkan dengan koma.
403,404
remote_auth_other_code_act
String
Tidak
Tindakan yang diambil CDN terhadap permintaan pengguna jika server autentikasi mengembalikan kode status yang bukan kode sukses atau kegagalan. Nilai yang valid:
pass (default): Mengizinkan permintaan.
Reject: tolak.
pass
remote_auth_fail_resp_code
Integer
Ya
Kode status respons yang dikembalikan CDN ke klien setelah autentikasi gagal. Contoh: 403.
403
remote_auth_timeout
Integer
Ya
Periode waktu tunggu autentikasi. Satuan: ms. Nilai maksimum adalah 3000.
500
remote_auth_timeout_action
String
Ya
Tindakan yang diambil saat autentikasi timeout. Nilai yang valid:
pass: CDN mengizinkan permintaan pengguna.
reject: CDN mengembalikan `remote_auth_fail_resp_code` ke pengguna.
pass
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "remote_auth_addr", "argValue": "https://example.aliyundoc.com/auth" }, { "argName": "remote_auth_method", "argValue": "get" }, { "argName": "remote_auth_type", "argValue": "all" }, { "argName": "remote_auth_reserve_args", "argValue": "all" }, { "argName": "remote_auth_custom_args", "argValue": "" }, { "argName": "remote_auth_reserve_header", "argValue": "all" }, { "argName": "remote_auth_custom_header", "argValue": "" }, { "argName": "remote_auth_success_code", "argValue": "200" }, { "argName": "remote_auth_fail_code", "argValue": "403" }, { "argName": "remote_auth_other_code_act", "argValue": "pass" }, { "argName": "remote_auth_fail_resp_code", "argValue": "403" }, { "argName": "remote_auth_timeout", "argValue": 500 }, { "argName": "remote_auth_timeout_action", "argValue": "pass" }], "functionName": "cdn_remote_auth" }], "DomainNames": "example.com" }
ip_allow_list_set
Deskripsi: Mengonfigurasi daftar putih alamat IP. Untuk informasi selengkapnya, lihat Konfigurasi daftar hitam/putih alamat IP.
Catatan tentang konflik fitur: Fitur daftar putih alamat IP dan fitur daftar hitam IP (fungsi: ip_black_list_set, ID fungsi: 13) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Perhatikan bahwa fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fitur (FunctionID/FuncId): 69.
Parameter:
Parameter
Type
Wajib
Deskripsi
Contoh
ip_list
String
Ya
Daftar alamat IP. Pisahkan beberapa alamat IP atau blok CIDR dengan koma (,).
192.168.0.1/24
customize_response_status_code
String
Tidak
Kode status respons kustom. Nilai default kosong, yang menunjukkan bahwa kode status respons adalah 403. Anda dapat memasukkan angka tiga digit untuk mengatur kode status respons kustom.
429
ip_acl_xfwd
String
Tidak
Menentukan apakah akan menggunakan alamat IP dalam header X-Forwarded-For. Nilai yang valid:
on (default): Menggunakan alamat IP pertama di sebelah kiri dalam header
x-forwarded-forpermintaan pengguna.off: Menggunakan
alamat IP asal koneksi.all: Menggunakan alamat IP dalam header
x-forwarded-fordanalamat IP asal koneksi.
all
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "ip_list", "argValue": "192.168.0.1/24" }], "functionName": "ip_allow_list_set" }], "DomainNames": "example.com" }
ip_black_list_set
Deskripsi: Mengonfigurasi daftar hitam IP. Untuk petunjuk konfigurasi konsol terperinci, lihat Konfigurasi Daftar Hitam/Putih IP.
Fitur daftar hitam IP dan fitur daftar putih IP (fungsi: ip_allow_list_set, ID Fungsi: 69) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi tertentu untuk nama domain.
ID Fitur (FunctionID/FuncId): 13.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
ip_list
String
Ya
Daftar alamat IP. Pisahkan beberapa alamat IP atau blok CIDR dengan koma (,).
192.168.0.1
customize_response_status_code
String
Tidak
Kode status respons kustom. Nilai default kosong, yang menunjukkan bahwa kode status respons adalah 403. Anda dapat memasukkan angka tiga digit untuk mengatur kode status respons kustom.
429
ip_acl_xfwd
String
Tidak
Menentukan apakah akan menggunakan alamat IP dalam header X-Forwarded-For. Nilai yang valid:
on (default): Menggunakan alamat IP pertama di sebelah kiri dalam header
x-forwarded-forpermintaan pengguna.off: Menggunakan
alamat IP asal koneksi.all: Menggunakan alamat IP dalam header
x-forwarded-fordanalamat IP asal koneksi.
all
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "ip_list", "argValue": "192.168.0.1" }], "functionName": "ip_black_list_set" }], "DomainNames": "example.com" }
ali_ua
Deskripsi: Memungkinkan Anda membatasi akses berdasarkan User-Agent. Untuk informasi selengkapnya, lihat Konfigurasi daftar hitam dan putih UA.
ID Fitur (FunctionID/FuncId): 58.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
ua
String
Ya
String User-Agent. Karakter wildcard (*) didukung untuk mencocokkan string apa pun. Untuk menentukan beberapa nilai, pisahkan dengan tanda vertikal (|). Contoh:
*curl*|*IE*|*chrome*|*firefox*.*curl*|*IE*|*chrome*|*firefox*
type
String
Ya
Jenis daftar. Nilai yang valid:
black: Daftar hitam.
white: Daftar putih.
CatatanDaftar hitam dan daftar putih saling eksklusif. Hanya satu yang dapat aktif pada satu waktu.
black
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "ua", "argValue": "*curl*|*IE*|*chrome*|*firefox*" }, { "argName": "type", "argValue": "black" }], "functionName": "ali_ua" }], "DomainNames": "example.com" }
Optimalisasi performa
tesla
Deskripsi: Mengonfigurasi optimalisasi HTML. Untuk informasi selengkapnya, lihat Optimalisasi HTML.
ID Fungsi (FunctionID/FuncId): 16.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan optimalisasi HTML:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
trim_js
String
Tidak
Menentukan apakah akan mengoptimalkan kode JavaScript (JS) inline dalam HTML:
Diaktifkan.
off (default): Menonaktifkan optimasi.
off
trim_css
String
Tidak
Menentukan apakah akan mengoptimalkan kode Cascading Style Sheets (CSS) inline dalam HTML:
on: Fitur diaktifkan.
off (default): Shutdown.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "trim_css", "argValue": "off" }, { "argName": "trim_js", "argValue": "off" }], "functionName": "tesla" }], "DomainNames": "example.com" }
gzip
Deskripsi: Mengoptimalkan halaman menggunakan kompresi Gzip. Untuk informasi selengkapnya, lihat Kompresi Gzip.
ID Fungsi (FunctionID/FuncId): 35.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan optimasi Gzip untuk halaman:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "gzip" }], "DomainNames": "example.com" }
brotli
Deskripsi: Mengonfigurasi kompresi Brotli untuk halaman. Untuk informasi selengkapnya, lihat Kompresi Brotli.
ID Fungsi (FunctionID/FuncId): 97.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan kompresi Brotli untuk halaman:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "brotli" }], "DomainNames": "example.com" }
set_hashkey_args
Deskripsi: Mengonfigurasi fitur yang mengabaikan parameter URL dengan hanya menyimpan parameter yang ditentukan. Untuk informasi selengkapnya, lihat Abaikan Parameter.
Deskripsi konflik fitur: Fitur yang mengabaikan parameter URL dengan menyimpan parameter tertentu bertentangan dengan fitur yang mengabaikan parameter URL dengan menghapus parameter tertentu (fungsi: ali_remove_args, ID fungsi: 75). Anda hanya dapat mengaktifkan salah satunya. Jika salah satu fitur telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Untuk menghapus konfigurasi tertentu untuk nama domain, panggil operasi DeleteSpecificConfig.
ID Fungsi (FunctionID/FuncId): 19.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
hashkey_args
String
Tidak
Daftar parameter yang dipertahankan. Pisahkan beberapa parameter dengan koma (,). Anda dapat menentukan hingga 10 parameter.
key1,key2
disable
String
Ya
Menentukan apakah akan mengabaikan semua parameter:
on: Mengabaikan semua parameter. Fitur yang menghapus, menyimpan, atau memodifikasi parameter menjadi tidak efektif. Hanya fitur yang menambahkan parameter yang tetap efektif.
off (default): Menonaktifkan fitur yang mengabaikan parameter. Fitur yang menyimpan, menambah, atau menghapus parameter tetap efektif.
CatatanMengabaikan semua parameter untuk kunci cache memiliki prioritas lebih rendah daripada menyimpan daftar parameter cache tertentu.
on
keep_oss_args
String
Ya
Menentukan apakah akan menyimpan parameter untuk permintaan pengambilan asal:
on: Menyimpan semua parameter untuk permintaan pengambilan asal.
off: Parameter untuk permintaan pengambilan asal sama dengan parameter untuk kunci cache.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "hashkey_args", "argValue": "" }, { "argName": "keep_oss_args", "argValue": "on" }, { "argName": "disable", "argValue": "on" }], "functionName": "set_hashkey_args" }], "DomainNames": "example.com" }
ali_remove_args
Deskripsi: Mengonfigurasi fitur yang mengabaikan parameter URL dengan menghapus parameter tertentu. Untuk informasi selengkapnya, lihat Abaikan Parameter.
Deskripsi konflik fitur: Fitur yang mengabaikan parameter URL dengan menghapus parameter tertentu bertentangan dengan fitur yang mengabaikan parameter URL dengan menyimpan parameter tertentu (fungsi: set_hashkey_args, ID fungsi: 19). Anda hanya dapat mengaktifkan salah satunya. Jika salah satu fitur telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi yang lain. Fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Untuk menghapus konfigurasi tertentu untuk nama domain, panggil operasi DeleteSpecificConfig.
ID Fungsi (FunctionID/FuncId): 75.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
ali_remove_args
String
Ya
Parameter yang akan dihapus. Pisahkan beberapa parameter dengan spasi.
CatatanParameter yang tersisa digunakan sebagai argumen URL dalam kunci cache.
test
keep_oss_args
String
Ya
Menentukan apakah akan menyimpan parameter untuk permintaan pengambilan asal:
on: Menyimpan semua parameter untuk permintaan pengambilan asal.
off: Parameter untuk permintaan pengambilan asal sama dengan parameter untuk kunci cache.
off
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "ali_remove_args", "argValue": "test" }, { "argName": "keep_oss_args", "argValue": "off" }], "functionName": "ali_remove_args" }], "DomainNames": "example.com" }
image_transform
Deskripsi: Mengonfigurasi pemrosesan gambar untuk Alibaba Cloud CDN. Untuk informasi selengkapnya, lihat Ikhtisar pemrosesan gambar.
ID Fungsi (FunctionID/FuncId): 239.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pemrosesan gambar:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
filetype
String
Ya
Format gambar yang mendukung transkoding. Pisahkan beberapa format dengan tanda vertikal (|). Nilai berikut didukung:
JPEG: Format gambar JPEG.
JPG: Format gambar JPG.
PNG: Format gambar PNG.
WEBP: Format gambar WEBP.
BMP: Format gambar BMP.
GIF: Format gambar GIF.
TIFF: Format gambar TIFF.
JP2: Format gambar JPEG 2000.
jpg|jpeg|png
webp
String
Tidak
Menentukan apakah akan mengaktifkan konversi otomatis ke WebP:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
orient
String
Tidak
Menentukan apakah akan mengaktifkan rotasi gambar otomatis:
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
CatatanFitur ini hanya berlaku pada gambar yang memiliki properti rotasi.
on
slim
Integer
Tidak
Pelangsingan gambar. Atur persentase pelangsingan. Nilainya bisa berupa bilangan bulat dari 0 hingga 100. Fitur ini mengurangi kualitas gambar untuk menghemat lalu lintas tanpa mengubah resolusi, dimensi, atau format.
10
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "filetype", "argValue": "jpg|jpeg|png" }, { "argName": "webp", "argValue": "on" }, { "argName": "orient", "argValue": "on" }, { "argName": "slim", "argValue": "" }, { "argName": "enable", "argValue": "on" }], "functionName": "image_transform" }], "DomainNames": "example.com" }
Fitur video
range
Deskripsi: Mengonfigurasi pengambilan asal range. Untuk petunjuk terperinci, lihat Konfigurasi pengambilan asal range.
ID Fitur (FunctionID atau FuncId): 31.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pengambilan asal range.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
force: Memaksa fitur diaktifkan.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "range" }], "DomainNames": "example.com" }
video_seek
Deskripsi: Fitur ini memungkinkan Anda mengonfigurasi pencarian video. Untuk informasi selengkapnya, lihat Konfigurasi pencarian video.
ID Fitur (FunctionID atau FuncId): 30.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pencarian video.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
flv_seek_by_time
String
Tidak
Menentukan apakah akan mengaktifkan pencarian dalam file FLV berdasarkan waktu.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
mp4_seek_start
String
Tidak
Parameter awal kustom untuk file MP4.
mp4starttime
mp4_seek_end
String
Tidak
Parameter akhir kustom untuk file MP4.
mp4endtime
flv_seek_start
String
Tidak
Parameter awal kustom untuk file FLV.
flvstarttime
flv_seek_end
String
Tidak
Parameter akhir kustom untuk file FLV.
flvendtime
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "video_seek" }], "DomainNames": "example.com" }
ali_video_split
Deskripsi: Mengonfigurasi fitur mendengarkan audio dan video. Untuk informasi selengkapnya, lihat Konfigurasi Mendengarkan Audio dan Video.
ID Fitur (FunctionID atau FuncId): 204.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan streaming audio-only.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "ali_video_split" }], "DomainNames": "example.com" }
ali_video_preview
Memungkinkan Anda mengonfigurasi pratinjau audio atau video. Untuk informasi selengkapnya, lihat Konfigurasi pratinjau audio atau video.
ID Fitur (FunctionID atau FuncId): 205.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan pratinjau audio atau video.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
CatatanFitur ini mendukung format file TS dan MP3. Untuk file FLV dan MP4, gunakan fitur pencarian video.
on
ali_video_preview_argument
String
Ya
Nama parameter kustom untuk durasi pratinjau. Nilai parameter ini harus dalam satuan detik.
fds
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "ali_video_preview_argument", "argValue": "fds" }], "functionName": "ali_video_preview" }], "DomainNames": "example.com" }
hls_token_rewrite
Deskripsi: Mengonfigurasi enkripsi dan penulisan ulang M3U8. Untuk informasi selengkapnya, lihat Konfigurasi enkripsi dan penulisan ulang M3U8.
ID Fitur (FunctionID atau FuncId): 253.
Deskripsi parameter:
Parameter
Type
Wajib
Deskripsi
Nilai contoh
enable
String
Ya
Menentukan apakah akan mengaktifkan enkripsi dan penulisan ulang M3U8.
on: Mengaktifkan fitur.
off: Menonaktifkan fitur.
on
hls_token_arg_name
String
Tidak
Nama parameter kustom untuk token HLS. Jika Anda tidak mengatur parameter ini, `MtsHlsUriToken` digunakan sebagai nama parameter.
example
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "hls_token_rewrite" }], "DomainNames": "example.com", }
Pembatasan laju
limit_rate
Deskripsi: Mengonfigurasi batas laju untuk permintaan tunggal.
FuncId: 72.
Deskripsi
Anda dapat mengonfigurasi ali_limit_rate untuk membatasi laju permintaan berdasarkan parameter dalam URL permintaan dan mengatur waktu mulai serta akhir pembatasan laju.
Anda dapat menerapkan pembatasan laju untuk parameter URL permintaan dengan menggabungkan parameter traffic_limit_arg dan traffic_limit_unit.
Anda dapat mengatur waktu mulai dan akhir pembatasan kecepatan dengan parameter ali_limit_start_hour dan ali_limit_end_hour.
Parameter
Tipe
Wajib
Deskripsi
Contoh
ali_limit_rate
String
Ya
Batas laju untuk permintaan tunggal, dalam Byte/s. Misalnya, 200 KByte/s atau 1 MByte/s. Nilainya adalah angka diikuti unit (k atau m).
Nilai minimum adalah 100k. Nilai di bawah 100k dianggap sebagai 100k.
1m: Batas laju untuk permintaan tunggal adalah 1 MByte/s.
100k: Batas laju untuk permintaan tunggal adalah 100 KByte/s.
ali_limit_rate_after
String
Tidak
Jumlah data dalam byte yang dikirim sebelum batas laju diterapkan. Parameter ini mendukung angka diikuti unit (k atau m).
1000
traffic_limit_arg
String
Tidak
Nama parameter batas laju yang diambil dari URL permintaan, seperti rate.
Jika permintaan tidak berisi parameter ini, batas laju default yang ditentukan oleh ali_limit_rate diterapkan. Untuk menonaktifkan batas laju ketika parameter ini tidak ada dalam permintaan, atur ali_limit_rate ke 0k.
rate
traffic_limit_unit
String
Tidak
Unit untuk parameter traffic_limit_arg. Nilai yang valid adalah m (MByte/s) dan k (KByte/s). Misalnya, jika Anda mengatur parameter ini ke m dan URL permintaan berisi rate=1, batas lajunya adalah 1 MByte/s.
Batas laju minimum adalah 100k. Jika laju yang dihitung lebih rendah dari 100k, sistem menggunakan 100k.
m
ali_limit_start_hour
Integer
Tidak
Jam ketika batas laju dimulai. Nilainya harus bilangan bulat dari 0 hingga 24 dan harus kurang dari waktu akhir. Nilai default adalah 0.
CatatanNilai tersebut merepresentasikan jam dalam format 24 jam. Misalnya, 0 merepresentasikan 00:00:00 dan 24 merepresentasikan 24:00:00.
20
ali_limit_end_hour
Integer
Tidak
Jam ketika batas laju berakhir. Nilainya harus bilangan bulat dari 0 hingga 24 dan harus lebih besar dari waktu mulai. Nilai default adalah 24.
23
Contoh 1: Atur batas laju untuk permintaan tunggal menjadi 1 MB/s.
{ "Functions": [{ "functionArgs": [{ "argName": "ali_limit_rate", "argValue": "1m" }], "functionName": "limit_rate" }], "DomainNames": "example.com" }Contoh 2: Atur batas laju default sebesar 1 MB/s untuk permintaan tunggal. Jika URL permintaan berisi parameter `rate`, nilainya digunakan untuk batas laju. Misalnya, jika permintaan menyertakan `rate=200`, batas lajunya menjadi 200 KB/s.
{ "Functions": [{ "functionArgs": [{ "argName": "ali_limit_rate", "argValue": "1m" },{ "argName": "traffic_limit_arg", "argValue": "rate" },{ "argName": "traffic_limit_unit", "argValue": "k" }], "functionName": "limit_rate" }], "DomainNames": "example.com" }
EdgeScript/Edge Routine
edge_function
Deskripsi: EdgeScript. Untuk informasi selengkapnya, lihat Ikhtisar EdgeScript.
ID Fungsi (FunctionID/FuncId): 180.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
rule
String
Ya
Aturan DSL.
if eq($uri, '/') {\n rewrite('https://example.com/index.html', 'redirect')\n}
pri
Integer
Ya
Prioritas. Nilai yang valid: [0, 999]. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi.
CatatanPrioritas untuk aturan di posisi head dan foot bersifat independen.
0
enable
String
Ya
Menentukan apakah aturan diaktifkan.
on: Aturan diaktifkan.
off: Menonaktifkan fungsionalitas.
on
name
String
Ya
Nama aturan. Nama hanya boleh berisi huruf dan garis bawah (_).
test
pos
String
Tidak
Posisi tempat aturan dieksekusi. Nilai yang valid:
head (default): Aturan dieksekusi di awal alur pemrosesan permintaan.
foot: Aturan dieksekusi di akhir alur pemrosesan permintaan.
head
brk
String
Tidak
Menentukan apakah akan menghentikan eksekusi aturan berikutnya. Nilai yang valid:
on: Jika aturan ini terkena, semua aturan berikutnya di posisi eksekusi saat ini dilewati.
off (default): Jika aturan ini terkena, aturan berikutnya tetap dieksekusi.
off
option
String
Tidak
Bidang ekstensi.
Kosong
grammar
String
Tidak
Sintaks aturan. Nilai yang valid: es2 (default) dan js.
/
jsmode
String
Tidak
Mode eksekusi JavaScript (JS). Nilai yang valid:
redirect: Mode Blok.
bypass (default): Mode bypass.
/
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "name", "argValue": "test" }, { "argName": "rule", "argValue": "if eq($uri, '/') {\n rewrite('https://example.com/index.html', 'redirect')\n}" }, { "argName": "pri", "argValue": "0" }, { "argName": "pos", "argValue": "head" }, { "argName": "enable", "argValue": "on" }, { "argName": "brk", "argValue": "off" }, { "argName": "option", "argValue": "" }], "functionName": "edge_function" }], "DomainName": "example.com" }
Rutinitas Edge
edgeroutine
Deskripsi: Edge Routine. Untuk informasi selengkapnya, lihat Apa itu Edge Routine?.
ID Fitur (FunctionID/FuncId): 275.
Fitur ini tersedia berdasarkan permintaan. Untuk meminta fitur ini, kirim tiket.
Mesin aturan
condition
Deskripsi: Mesin aturan adalah fitur yang memungkinkan Anda mengonfigurasi berbagai aturan kondisional melalui antarmuka grafis. Aturan kondisional mendeteksi parameter dalam permintaan pengguna untuk menentukan apakah konfigurasi berlaku untuk permintaan tertentu. Ini memberikan kontrol yang lebih fleksibel dan tepat atas cara kebijakan konfigurasi Alibaba Cloud Content Delivery Network (CDN) dieksekusi. Untuk informasi selengkapnya tentang fitur ini, lihat Mesin aturan.
ID Fitur (FunctionID/FuncId): 250.
Fitur ini tersedia berdasarkan permintaan. Untuk mengaktifkannya, kirim tiket.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Contoh
rule
Array
Ya
Detail kondisi aturan. Ini mencakup nama, status, operator logika, dan ekspresi kondisional.
Kondisi aturan:
{\"match\":{\"logic\":\"and\",\"criteria\":[{\"matchType\":\"clientipVer\",\"matchObject\":\"CONNECTING_IP\",\"matchOperator\":\"equals\",\"matchValue\":\"v6\",\"negate\":false}]},\"name\":\"example\",\"status\":\"enable\"}Hasil:
Nama aturan: example
Status: enable
Operator logika: and
Ekspresi kondisional: Versi protokol alamat IP klien yang terhubung adalah v6.
Format ekspresi kondisional (format `argValue`) dijelaskan sebagai berikut:
Parameter
Deskripsi
"match":
`match` menunjukkan ekspresi pencocokan kondisional.
"logic":"and"
`logic` adalah operator logika untuk ekspresi pencocokan kondisional. Nilai yang valid adalah `and` dan `or`.
"criteria"
`criteria` menentukan konten ekspresi kondisional.
"matchType":"clientipVer"
`matchType` menentukan jenis informasi dalam permintaan pengguna untuk dicocokkan.
"matchObject":"CONNECTING_IP"
`matchObject` memperjelas lebih lanjut jenis pencocokan. Misalnya, alamat IP klien bisa berupa "IP yang terhubung" atau "IP X-Forwarded-For (XFF)".
"matchOperator":"equals"
`matchOperator` menentukan tindakan yang dilakukan untuk operasi pencocokan.
"matchValue":"v6"
`matchValue` adalah nilai preset untuk dicocokkan terhadap informasi dalam permintaan pengguna.
"negate":false
`negate` menentukan apakah akan meniadakan hasil ekspresi kondisional. Nilai yang valid adalah `true` dan `false`.
"name":"example"
`name` adalah nama kondisi aturan.
"status":"enable"
`status` adalah status aktif kondisi aturan.
Contoh konfigurasi:
Contoh berikut menunjukkan cara menggunakan OpenAPI untuk menambahkan konfigurasi mesin aturan untuk nama domain yang dipercepat
example.com. Konfigurasi ini mencocokkan dan memfilter permintaan berdasarkan apakah versi protokol IP klien adalah IPv6. Untuk deskripsi terperinci tentang fitur mesin aturan, lihat Mesin aturan.{ "Functions": [{ "functionArgs": [{ "argName": "rule", "argValue": "{\"match\":{\"logic\":\"and\",\"criteria\":[{\"matchType\":\"clientipVer\",\"matchObject\":\"CONNECTING_IP\",\"matchOperator\":\"equals\",\"matchValue\":\"v6\",\"negate\":false}]},\"name\":\"example\",\"status\":\"enable\"}" }], "functionName": "condition" }], "DomainNames": "example.com" }Setelah Anda membuat konfigurasi mesin aturan, Anda dapat mengaitkannya dengan konfigurasi fitur lainnya. Untuk daftar fitur yang saat ini mendukung referensi konfigurasi mesin aturan, lihat Mesin aturan. Ini memberikan kontrol yang lebih fleksibel dan tepat atas cara kebijakan konfigurasi CDN dieksekusi. Misalnya, konfigurasi untuk fitur asal bersyarat (fungsi: `origin_dns_host`) dapat mereferensikan konfigurasi mesin aturan. Untuk contoh konfigurasi, lihat origin_dns_host.
Catatan:
Untuk mereferensikan kondisi aturan dari fitur lain, atur parameter `parentId` ke `configid` dari kondisi aturan tersebut. `configid` dihasilkan saat Anda membuat kondisi aturan.
Parameter `parentId` tidak didukung saat fungsi adalah `condition` (mesin aturan).
Konfigurasi keamanan
ali_location
Fitur: Daftar Hitam Lokasi. Untuk informasi selengkapnya, lihat Daftar hitam berbasis wilayah.
FuncId: 57.
Parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
location
String
Ya
Wilayah tempat kebijakan pemblokiran berlaku. Nilainya dapat dalam salah satu format berikut:
Kode negara dua huruf kapital yang sesuai dengan standar ISO 3166. Untuk menentukan beberapa negara, pisahkan kode dengan spasi.
Anda dapat mengatur wilayah ke global.
global
type
String
Ya
Jenis kebijakan pemblokiran. Nilai yang valid:
black: Memblokir alamat IP klien dari wilayah yang ditentukan.
white: Memblokir alamat IP klien dari luar wilayah yang ditentukan.
white
Contoh konfigurasi:
{ "Functions": [{ "functionArgs": [{ "argName": "location", "argValue": "global" }, { "argName": "type", "argValue": "white" }], "functionName": "ali_location" }], "DomainNames": "example.com" }
QUIC
iquic
Deskripsi: Mengonfigurasi parameter QUIC dasar. Untuk informasi selengkapnya, lihat Konfigurasi QUIC.
ID Fungsi (FunctionID/FuncId): 281.
Deskripsi parameter:
Parameter
Tipe
Wajib
Deskripsi
Nilai contoh
iquic_enable
String
Ya
Menentukan apakah akan mengaktifkan protokol QUIC:
on: Mengaktifkan protokol.
off: Shut down.
onContoh konfigurasi
{ "Functions": [{ "functionArgs": [{ "argName": "iquic_enable", "argValue": "on" }], "functionName": "iquic" }], "DomainNames": "example.com" }