全部产品
Search
文档中心

CDN:Fungsi konfigurasi domain

更新时间:Nov 27, 2025

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.

Catatan

Informasi Dasar

ipv6

  • Fitur ini digunakan untuk mengonfigurasi akses IPv6. Untuk informasi selengkapnya, lihat konfigurasi IPv6.

  • ID Fungsi (FunctionID/FuncId): 194.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    switch

    String

    Ya

    Menentukan apakah akses IPv6 diaktifkan. Nilai yang valid:

    • on: Mengaktifkan fitur.

    • off: Menunjukkan status mati.

    on

    region

    String

    Ya

    Wilayah tempat IPv6 diaktifkan. Mendukung karakter wildcard (*).

    Catatan
    • Karakter wildcard (*) menunjukkan bahwa IPv6 diaktifkan untuk semua Wilayah. Saat ini, Anda hanya dapat mengaktifkan IPv6 untuk semua Wilayah. Untuk mengaktifkan IPv6 pada Wilayah tertentu, submit a ticket.

    • 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

    Diperlukan

    Deskripsi

    Contoh

    domain_name

    String

    Ya

    Konten dari header host asal.

    example.com

  • Contoh 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enable

    String

    Ya

    Menentukan apakah kebijakan protokol asal diaktifkan. 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.

    Catatan

    Jika 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 kali operasi. 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

    Diperlukan

    Deskripsi

    Contoh

    private_oss_auth

    String

    Ya

    Menentukan apakah pengambilan asal dari bucket pribadi diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • Off: Menunjukkan penonaktifan.

    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 field 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 bucket OSS pribadi di bawah 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 privat 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

    Tipe

    Diperlukan

    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 field dengan spasi.

    Setelah Anda mengonfigurasi token keamanan permanen, nama domain yang dipercepat dapat melakukan pengambilan asal tidak hanya ke bucket OSS pribadi dalam Akun Alibaba Cloud yang sama, tetapi juga ke bucket OSS pribadi dalam 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 origin SNI. Untuk informasi selengkapnya, lihat Konfigurasi origin SNI default.

  • ID Fungsi (FunctionID/FuncId): 114.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enabled

    String

    Ya

    Menentukan apakah fitur origin SNI diaktifkan. 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.com

  • Contoh 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 timeout untuk permintaan pengambilan asal. Untuk informasi selengkapnya, lihat Konfigurasi timeout untuk permintaan HTTP pengambilan asal.

  • ID Fungsi (FunctionID/FuncId): 124.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    forward_timeout

    Integer

    Ya

    Periode timeout permintaan. Unit: detik.

    Catatan

    Atur periode timeout kurang dari 100 detik.

    30

  • Contoh konfigurasi:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "forward_timeout",
                "argValue": "30"
            }],
            "functionName": "forward_timeout"
        }],
        "DomainNames": "example.com"
    }

asal_lanjutan

  • 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 fitur lainnya. Perhatikan bahwa suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain.

  • ID Fungsi (FunctionID/FuncId): 235.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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: permintaan cookie yang dibawa dalam permintaan pengguna.

    uri

    variable

    String

    Ya

    Nama variabel.

    Catatan

    Jika 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 dari 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 tertentu.

    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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enable

    String

    Ya

    Menentukan apakah pengalihan 302 untuk pengambilan asal diaktifkan. 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.

    Catatan

    Jumlah pengalihan 302 adalah satu kurang dari jumlah pengambilan asal. Jumlah maksimum default pengambilan asal adalah 3, dan rentang yang valid adalah 2 hingga 6.

    2

    retain_args

    String

    Tidak

    Menentukan apakah parameter permintaan asli dipertahankan dan dikembalikan ke server asal tujuan selama pengalihan 302. Nilai yang valid:

    • on: pertahankan.

    • off (default): jangan pertahankan.

    off

    retain_header

    String

    Tidak

    Menentukan apakah header permintaan asli dipertahankan dan dikembalikan 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 oleh server asal ke CDN. Nama header default adalah Location.

    X-Alicdn-Redirect

    retain_host

    String

    Tidak

    Menentukan apakah nama domain asal dipertahankan 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 hasil pengalihan di-cache. Jika diaktifkan, CDN menyimpan hasil pengalihan untuk URL yang sama guna meningkatkan kinerja respons. Nilai yang valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    expired_time

    Integer

    Tidak

    Periode timeout untuk caching hasil pengalihan. Parameter ini harus digunakan bersama fitur cache. Satuan: detik. Nilai default: 3600.

    7200

    follow_origin_host

    String

    Tidak

    Menentukan apakah nama domain asal digunakan 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 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 inbound.

    Catatan

    set_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

    Diperlukan

    Deskripsi

    Contoh

    kunci

    String

    Ya

    Nama header permintaan asal.

    Accept-Encoding

    nilai

    String

    Ya

    Nilai dari header permintaan asal. Untuk menghapus header permintaan asal, atur nilainya menjadi 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 outbound.

  • ID Fungsi (FunctionID/FuncId): 228.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    header_operation_type

    String

    Ya

    Operasi header permintaan. Nilai yang valid:

    • add: Menambahkan item.

    • delete: menghapus.

    • modify: Mengubah atau memodifikasi.

    • replace: mengganti.

    add

    header_name

    String

    Ya

    Nama dari header permintaan.

    Accept-Encoding

    header_value

    String

    Tidak

    Nilai dari header permintaan. Anda dapat mengonfigurasi beberapa nilai untuk parameter header permintaan. Pisahkan beberapa nilai dengan koma (,).

    gzip

    duplicate

    String

    Tidak

    Menentukan apakah diperbolehkan menambahkan header permintaan dengan nama yang sama. Parameter ini diperlukan 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 diperlukan saat header_operation_type diatur ke rewrite. Ekspresi reguler didukung.

    value1

    header_destination

    String

    Tidak

    Nilai parameter setelah penggantian. Parameter ini diperlukan saat header_operation_type diatur ke rewrite.

    value123

    match_all

    String

    Tidak

    Mode pencocokan. Parameter ini diperlukan 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 inbound.

  • ID Fungsi (FunctionID/FuncId): 229.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    header_operation_type

    String

    Ya

    Operasi header respons. Nilai yang valid:

    • add: Menambahkan item.

    • delete: menghapus.

    • modify: Mengubah item yang ditentukan.

    • Operasi rewrite setara dengan operasi replace.

    add

    header_name

    String

    Ya

    Nama dari header respons.

    Cache-Control

    header_value

    String

    Tidak

    Nilai dari header respons. Anda dapat mengonfigurasi beberapa nilai untuk parameter header respons. Pisahkan beberapa nilai dengan koma (,).

    no-cache

    duplicate

    String

    Tidak

    Menentukan apakah diperbolehkan menambahkan header respons dengan nama yang sama. Parameter ini diperlukan 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 diperlukan saat header_operation_type diatur ke rewrite. Ekspresi reguler didukung.

    value1

    header_destination

    String

    Tidak

    Nilai parameter setelah penggantian. Parameter ini diperlukan saat header_operation_type diatur ke rewrite.

    value123

    match_all

    String

    Tidak

    Mode pencocokan. Parameter ini diperlukan 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 Menulis 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 tetap dieksekusi.

    • break: Setelah aturan ini dieksekusi, aturan penulisan ulang berikutnya tidak dieksekusi.

    • enhance_break: Mirip dengan break, tetapi memproses URL beserta parameternya dan juga berlaku untuk aliran langsung 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.

    Catatan

    Penulisan 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. Saat aturan penulisan ulang yang berbeda berlaku untuk parameter yang sama, hanya aturan dengan prioritas tertinggi yang berlaku.

  • ID Fungsi (FunctionID/FuncId): 224.

  • Parameter:

    Parameter

    Type

    Diperlukan

    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 terdaftar yang akan dipertahankan. Aksi tambah dan hapus parameter tetap berlaku.

    empty

    ignore_all_argument

    String

    Tidak

    Menentukan apakah semua parameter diabaikan. Nilai yang valid:

    • on: mengabaikan semua parameter. Hanya tindakan tambah parameter yang tetap efektif. Tindakan hapus, pertahankan hanya, dan modifikasi parameter menjadi tidak efektif.

    • off (default): tidak mengabaikan semua parameter. Tindakan pertahankan, 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 penulisan ulang parameter asal diaktifkan. 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enabled

    String

    Ya

    Menentukan apakah bucket autentikasi Amazon S3 diaktifkan. Nilai yang valid:

    • l2: aktifkan.

    • off: nonaktifkan.

    l2

    bucketname

    String

    Tidak

    Nama dari 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enabled

    String

    Ya

    Menentukan apakah verifikasi sertifikat asal diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • off: nonaktifkan.

    on

    common_name_whitelist

    String

    Tidak

    Daftar nama domain yang masuk daftar putih untuk sertifikat. Anda dapat mengonfigurasi beberapa nama domain. Pisahkan beberapa nama domain dengan koma (,). Sertifikat untuk nama domain yang masuk daftar putih ini dapat lolos verifikasi.

    example.com

  • Contoh 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 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. Untuk informasi selengkapnya, lihat Mesin Aturan. Jika tidak ada kondisi aturan yang dikaitkan, seluruh traffic pengambilan asal CDN akan diarahkan ke alamat server asal tunggal ini, yang menggagalkan tujuan penggunaan kondisi aturan untuk mengontrol URL asal.

  • Catatan tentang konflik fitur: Fitur asal bersyarat dan fitur asal lanjutan (Fungsi: advanced_origin, ID Fitur: 235) saling eksklusif. Jika salah satu fitur ini telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi fitur lainnya. Suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain.

  • ID Fungsi (FunctionID/FuncId): 212.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    ali_origin_dns_host

    String

    Ya

    Nama domain yang digunakan untuk kueri DNS selama pengambilan asal.

    example.com

  • Contoh 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 ini, pengambilan asal diarahkan ke alamat server asal tertentu.

    {
        "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 lebih lanjut tentang konfigurasi di konsol, lihat Konfigurasi HOST pengambilan asal tertentu.

  • ID Fungsi (FunctionID/FuncId): 242.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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.com

    host

    String

    Ya

    Host tertentu. Anda juga dapat tidak menentukan host. Atur parameter host ke ali_follow_origin untuk menggunakan alamat server asal sebagai nilai host.

    host.example.com

  • Contoh konfigurasi 1: Saat permintaan pengguna diambil dari server asal example.com, nilai `host` yang digunakan adalah host.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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    port

    String

    Ya

    Port asal.

    Catatan

    Saat 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, algoritma internasional dan 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.

    Catatan

    Algoritma 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 origin SNI tertentu untuk server asal tertentu.

  • ID Fungsi (FunctionID/FuncId): 262.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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.com

    sni_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.org

    keepalive_sni

    String

    Tidak

    Menentukan apakah pencocokan SNI untuk koneksi persisten diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • off: nonaktifkan.

    Catatan

    Jika diaktifkan, koneksi persisten yang berbeda digunakan untuk origin SNI yang berbeda.

    /

  • Contoh konfigurasi 1: Saat permintaan pengguna diambil dari server asal origin.example.com, nilai SNI yang digunakan adalah host.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 sama host.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 parameter ali_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 parameter ali_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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    source_group_name

    String

    Ya

    Nama kelompok 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 lebih kecil menunjukkan prioritas lebih tinggi.

    • Bobot: Mendukung nilai dari 1 hingga 100. CDN mendistribusikan permintaan ke server asal yang berbeda berdasarkan bobot mereka.

    • 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

    Catatan

    Logika percobaan ulang pengambilan asal:

    • Jumlah percobaan ulang: Jumlah kali percobaan ulang pengambilan asal.

      • Percobaan ulang hanya dilakukan antara alamat IP yang berbeda dalam kelompok asal yang sama.

      • Jumlah maksimum sebenarnya dari percobaan ulang dibatasi oleh jumlah alamat IP yang tersedia dalam kelompok 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 saat 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 saat 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 timeout 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 timeout dan melakukan percobaan ulang permintaan setelah periode timeout tercapai.

      • Waktu habis koneksi TCP asal: 10 detik.

      • Timeout penulisan asal: 30 detik. Ini adalah timeout untuk menulis konten setelah koneksi dibuat dengan server asal.

      • Timeout pembacaan asal: 30 detik. Timeout 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 di Lapisan 4 setiap 5 detik. Jika koneksi berhasil dibuat, alamat IP asal dipulihkan ke daftar 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 tersedia, dan permintaan akses berikutnya tetap 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enable

    String

    Ya

    Menentukan apakah pengambilan asal melalui IPv6 diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • off: nonaktifkan.

    Catatan

    Setelah 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 fitur yang memungkinkan pengambilan asal mengikuti versi protokol IP permintaan klien diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • off: nonaktifkan.

    Catatan

    Setelah 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 fitur "Polling Alamat Asal IPv4/IPv6" diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • off: nonaktifkan.

    Catatan
    • Fitur "Polling Alamat Asal IPv4/IPv6" saling eksklusif dengan fitur "Pengambilan Asal melalui IPv6" dan "Mengikuti Versi Protokol IP Klien". Setelah "Polling Alamat Asal IPv4/IPv6" diaktifkan, kedua fitur lainnya menjadi tidak efektif.

    • Fitur "Polling Alamat Asal IPv4/IPv6" memastikan bahwa permintaan pengambilan asal didistribusikan ke semua alamat server asal menggunakan metode polling, 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

    Diperlukan

    Deskripsi

    Contoh

    enable

    String

    Ya

    Menentukan apakah bucket autentikasi Tencent Cloud COS diaktifkan. Nilai yang valid:

    • on: aktifkan.

    • Off: Menunjukkan penonaktifan sistem.

    on

    cos_valid_period

    String

    Tidak

    Periode validitas signature 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 traffic 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    oss_bucket_id

    String

    Ya

    Nama domain publik dari bucket OSS.

    cdn-test.oss-cn-hongkong.aliyuncs.com

    oss_pri_buckets

    String

    Ya

    Nama domain publik dari bucket OSS dan nama bucket 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

    Diperlukan

    Deskripsi

    Contoh

    ttl

    Integer

    Ya

    Durasi cache. Satuan: detik. Nilai valid: 1 hingga 99999999 (lebih dari 3 tahun).

    500000

    file_type

    String

    Ya

    Format file. Nilai ini peka huruf besar/kecil. Pisahkan beberapa format file dengan koma (,). Contoh: jpg,txt.

    jpg

    weight

    Integer

    Tidak

    Bobot. Nilai valid: 1 hingga 99.

    Catatan

    Nilai default adalah 1. Angka yang lebih besar menunjukkan prioritas yang lebih tinggi.

    1

    swift_origin_cache_high

    String

    Tidak

    Memprioritaskan kebijakan cache server origin. Jika diaktifkan, ketika server origin merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server origin akan didahulukan. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_no_cache_low

    String

    Tidak

    Mengabaikan header respons no-cache dari server origin. Jika diaktifkan, header respons berikut dari server origin akan diabaikan (semuanya menunjukkan tidak ada caching):

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragma: no-cache

    Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_follow_cachetime

    String

    Tidak

    Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN efektif akhir dikirim ke klien. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    force_revalidate

    String

    Tidak

    Memaksa validasi konten ketika TTL bernilai 0. Nilai valid:

    • on: aktifkan. Ketika TTL bernilai 0, konten dapat di-cache pada titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.

    • off (default): nonaktifkan. Ketika TTL bernilai 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil ulang konten tersebut.

    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

    Tipe

    Diperlukan

    Deskripsi

    Example

    ttl

    Integer

    Ya

    Durasi cache. Satuan: detik. Nilai 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 valid: 1 hingga 99.

    Catatan

    Nilai default adalah 1. Angka yang lebih besar menunjukkan prioritas yang lebih tinggi.

    1

    swift_origin_cache_high

    String

    Tidak

    Memprioritaskan kebijakan cache server origin. Jika diaktifkan, ketika server origin merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server origin akan didahulukan. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_no_cache_low

    String

    Tidak

    Mengabaikan header respons no-cache dari server origin. Jika diaktifkan, header respons berikut dari server origin akan diabaikan (semuanya menunjukkan tidak ada caching):

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragma: no-cache

    Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_follow_cachetime

    String

    Tidak

    Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN efektif akhir dikirim ke klien. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    force_revalidate

    String

    Tidak

    Memaksa validasi konten ketika TTL bernilai 0. Nilai valid:

    • on: aktifkan. Ketika TTL bernilai 0, konten dapat di-cache pada titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.

    • off (default): nonaktifkan. Ketika TTL bernilai 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil ulang konten tersebut.

    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

    Tipe

    Diperlukan

    Deskripsi

    Example

    file_type

    String

    Ya

    Format file. Nilai 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 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

    Memprioritaskan kebijakan cache server origin. Jika diaktifkan, ketika server origin merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server origin akan didahulukan. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_code_no_cache_low

    String

    Tidak

    Mengabaikan header respons no-cache dari server origin. Jika diaktifkan, header respons berikut dari server origin akan diabaikan (semuanya menunjukkan tidak ada caching):

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragma: no-cache

    Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_code_follow_cachetime

    String

    Tidak

    Klien mengikuti kebijakan cache CDN. Jika diaktifkan, kebijakan cache CDN efektif akhir dikirim ke klien. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    force_revalidate

    String

    Tidak

    Memaksa validasi konten ketika TTL bernilai 0. Nilai valid:

    • on: aktifkan. Ketika TTL bernilai 0, konten dapat di-cache pada titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.

    • off (default): nonaktifkan. Ketika TTL bernilai 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil ulang konten tersebut.

    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 suatu path. Untuk informasi selengkapnya, lihat Konfigurasi waktu kedaluwarsa kode status.

  • ID Fungsi (FunctionID/FuncId): 65.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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 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

    Memprioritaskan kebijakan cache server origin. Jika diaktifkan, ketika server origin merespons dengan header terkait cache (seperti Cache-Control, Pragma), kebijakan cache server origin akan didahulukan. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    swift_code_no_cache_low

    String

    Tidak

    Mengabaikan header respons no-cache dari server origin. Jika diaktifkan, header respons berikut dari server origin akan diabaikan (semuanya menunjukkan tidak ada 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 efektif akhir dikirim ke klien. Nilai valid:

    • on: aktifkan

    • off (default): nonaktifkan

    off

    force_revalidate

    String

    Tidak

    Memaksa validasi konten ketika TTL bernilai 0. Nilai valid:

    • on: aktifkan. Ketika TTL bernilai 0, konten dapat di-cache pada titik kehadiran CDN, dan setiap permintaan memerlukan pengambilan asal untuk memvalidasi konten yang di-cache.

    • off (default): nonaktifkan. Ketika TTL bernilai 0, titik kehadiran CDN tidak menyimpan konten dalam cache, dan setiap permintaan memerlukan pengambilan asal untuk mengambil ulang konten tersebut.

    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 Origin). Untuk instruksi konfigurasi melalui Konsol, lihat Konfigurasi Waktu Kedaluwarsa Kode Status (Prioritas Origin).

  • ID Fungsi (FunctionID/FuncId): 207.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example

    default_ttl_code

    String

    Ya

    Kode status dan durasi cache-nya. Satuan: detik. Nilai 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 lebih lanjut, lihat Modifikasi header respons arah keluar.

  • ID Fungsi (FunctionID/FuncId): 27.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    key

    String

    Ya

    Header respons.

    Cache-Control

    value

    String

    Ya

    Nilai dari header respons. Pisahkan beberapa nilai dengan koma (,).

    Catatan

    Jika Anda ingin menghapus header respons, atur nilainya menjadi null.

    no-cache

    header_operation_type

    String

    Tidak

    Operasi header permintaan. Nilai valid:

    • add: Menambahkan item.

    • Delete: menghapus.

    • modify: Melakukan perubahan pada item.

    • Rewrite: mengganti.

    add

    duplicate

    String

    Tidak

    Menentukan apakah diperbolehkan menambahkan header permintaan dengan nama yang sudah ada. Parameter ini wajib diisi ketika 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 diisi ketika header_operation_type diatur ke rewrite. Nilainya dapat berupa ekspresi reguler.

    value1

    header_destination

    String

    Tidak

    Nilai baru untuk parameter. Atur parameter ini ketika header_operation_type diatur ke rewrite.

    value123

    match_all

    String

    Tidak

    Menentukan pola pencocokan yang digunakan ketika header_operation_type diatur ke rewrite untuk operasi penggantian:

    • on: Mengganti semua nilai yang cocok.

    • off: Hanya mengganti nilai pertama yang cocok.

    /

    access_origin_control

    String

    Tidak

    Verifikasi lintas domain:

    • on: Mengaktifkan verifikasi lintas domain pada titik kehadiran CDN (PoP).

    • off: Menonaktifkan fitur ini.

    /

  • 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

    Diperlukan

    Deskripsi

    Example

    error_code

    Integer

    Ya

    Kode error.

    404

    rewrite_page

    String

    Ya

    Halaman pengalihan.

    http://example.aliyundoc.com/error404.html

  • Contoh 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh nilai

    regex

    String

    Ya

    URI yang akan ditulis ulang. URI harus diawali dengan garis miring (/) dan tidak boleh mencakup awalan http:// atau nama domain. Ekspresi Reguler Kompatibel Perl (PCRE) didukung. Contoh: ^/hello$.

    ^/hello$

    replacement

    String

    Ya

    Jika aturan eksekusi diatur ke "Break", hanya path yang diawali dengan garis miring (/) yang didukung. Path tidak boleh mencakup awalan protokol atau nama domain. Jika aturan eksekusi diatur ke "Redirect", path dapat mencakup awalan protokol dan nama domain. PCRE didukung. Misalnya, gunakan $1 dan $2 untuk menangkap string dalam tanda kurung pada path yang ingin Anda tulis ulang.

    /hello/test

    flag

    String

    Tidak

    Menentukan aksi yang dilakukan oleh titik kehadiran CDN (PoP) setelah URI ditulis ulang. Nilai valid:

    • Kosong: Nilai default. Artinya parameter flag tidak dilewatkan. Jika Anda mengonfigurasi beberapa aturan dan URL permintaan cocok dengan suatu aturan, PoP akan 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 Location ke klien. Parameter dalam URI asli tidak dimodifikasi. Setelah aturan saat ini dieksekusi, PoP terus mencocokkan aturan berikutnya.

    • enhance_break: Mirip dengan break, tetapi aksi ini memodifikasi seluruh URL, termasuk parameternya.

    • enhance_redirect: Mirip dengan redirect, tetapi aksi ini memodifikasi seluruh URL, termasuk parameternya.

    Catatan

    Aturan eksekusi yang berbeda menggunakan metode penulisan ulang yang berbeda. Mereka juga berbeda dalam hal apakah URL yang ditulis ulang mendukung nama domain dan protokol lain:

    • Kosong, break, dan enhance_break langsung menulis ulang URL permintaan. Metode ini 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 serta ke protokol lain:

      • Alamat Location 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 Location 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

    Tipe

    Diperlukan

    Deskripsi

    Contoh nilai

    uri

    Array of String

    Tidak

    Menulis ulang URI sumber ke URI tujuan dan menggunakan URI tujuan sebagai kunci cache.

    • uri_to_rewrite: URI sumber.

    • 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 valid adalah add, delete, modify, dan keep.

    • args: Nilai parameter untuk operasi tersebut.

    [{"args":"test=123","args_operation_type":"add"}]

    headers

    String

    Tidak

    Menambahkan beberapa Header HTTP, dipisahkan dengan spasi, ke kunci cache.

    contoh

    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.

    []

  • Konfigurasi contoh:

    {
        "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

    Diperlukan

    Deskripsi

    Contoh nilai

    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 resource 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 origin 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 origin yang memicu fitur ini.

    • Deskripsi fitur: Menentukan kode status dari server origin yang memicu fitur ini.

    • Nilai default: Tidak ditentukan. Secara default, error server origin mencakup timeout dan semua kode status 5xx.

    • Konfigurasi: Masukkan 4xx atau 5xx untuk pencocokan wildcard. Anda juga dapat memasukkan kode status tertentu, 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 kedaluwarsa setelah masa berlakunya habis.

    • Deskripsi fitur: Durasi maksimum untuk menyimpan cache setelah masa berlakunya habis.

    • Nilai default untuk waktu perpanjangan kedaluwarsa adalah 1 jam.

    • Masukkan bilangan bulat 1 atau lebih besar. Satuan: detik.

    60

    origin_first

    String

    Tidak

    Menentukan apakah kebijakan cache dari server origin diprioritaskan.

    • Deskripsi: Jika parameter ini diatur ke on, kebijakan origin diprioritaskan. Jika server origin mengembalikan file dengan header Cache-Control: stale-if-error=xx, waktu yang ditentukan oleh parameter stale-if-error digunakan sebagai waktu perpanjangan kedaluwarsa.

    • Default: Parameter ini kosong secara default, yang setara dengan off. Dalam kasus ini, waktu perpanjangan kedaluwarsa diatur oleh parameter extend_expiration_time.

    • Konfigurasi: Nilai valid adalah on (diaktifkan) dan off (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 dasar HTTPS. Untuk detail lebih lanjut, lihat Konfigurasikan Sertifikat HTTPS, Konfigurasikan HTTP/2, dan Konfigurasikan OCSP Stapling.

  • ID Fungsi (FunctionID/FuncId): 78.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    http2

    String

    Tidak

    Menentukan apakah akan mengaktifkan HTTP/2.

    • on: Mengaktifkan pengaturan.

    • off: Status nonaktif.

    on

    ocsp_stapling

    String

    Tidak

    Menentukan apakah akan mengaktifkan fitur Protokol Status Sertifikat Online (OCSP).

    • on: Mengaktifkan fitur.

    • off: Menunjukkan status nonaktif.

    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 Konfigurasikan 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 dapat mengonfigurasi yang lain. Perlu diperhatikan bahwa suatu fitur dianggap telah dikonfigurasi meskipun parameter sakelarnya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain tersebut.

  • ID Fungsi (FunctionID/FuncId): 45.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enable

    String

    Ya

    Memberlakukan 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 badan 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 Konfigurasikan pengalihan paksa.

  • Catatan mengenai 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 dapat mengonfigurasi yang lain. Perlu diperhatikan bahwa suatu fitur dianggap telah dikonfigurasi meskipun parameter sakelarnya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain tersebut.

  • ID Fungsi (FunctionID/FuncId): 44.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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 badan 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 Konfigurasikan Versi TLS dan Paket Sandi.

  • ID Fungsi (FunctionID/FuncId): 110.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    tls10

    String

    Tidak

    Menentukan apakah akan mengaktifkan TLSv1.0.

    • on (default): Mengaktifkan versi tersebut.

    • Off: Nonaktif.

    on

    tls11

    String

    Tidak

    Menentukan apakah akan mengaktifkan TLSv1.1.

    • on (default): Mengaktifkan versi.

    • off: Menunjukkan status nonaktif.

    on

    tls12

    String

    Tidak

    Menentukan apakah akan mengaktifkan TLSv1.2.

    • on (default): Mengaktifkan versi tersebut.

    • Off: Matikan.

    on

    tls13

    String

    Tidak

    Menentukan apakah akan mengaktifkan TLSv1.3.

    • On (Default)

    • off: Menunjukkan status nonaktif.

    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 ketika 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, serta 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, serta 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, serta 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 client. Untuk informasi selengkapnya, lihat Sertifikat autentikasi client.

  • ID Fungsi (FunctionID/FuncId): 111.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    client_certificate_verify

    String

    Ya

    Menentukan apakah akan mengaktifkan autentikasi sertifikat klien.

    • on: Mengaktifkan fitur.

    • off: Menonaktifkan fitur.

    on

    client_certificate

    String

    Ya

    Sertifikat client self-signed (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 client. Kedalaman adalah jumlah level dari sertifikat client itu sendiri hingga kembali ke sertifikat CA root. Nilai default-nya adalah 1.

    1

  • Contoh 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 instruksi konfigurasi lengkap, lihat Konfigurasikan HSTS.

  • ID Fungsi (FunctionID/FuncId): 112.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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.

    Catatan

    Disarankan menggunakan nilai 5184000 detik (60 hari).

    5184000

    https_hsts_include_subdomains

    String

    Tidak

    Menentukan apakah akan menyertakan subdomain dalam header HSTS. Nilai yang valid adalah on dan off.

    Catatan

    Sebelum mengaktifkan parameter ini, pastikan HTTPS telah diaktifkan untuk semua subdomain dari nama domain yang dipercepat. Jika tidak, subdomain tersebut 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 lebih lanjut, lihat Konfigurasikan Daftar Hitam/Daftar Putih Referer.

  • Catatan mengenai 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 dapat mengonfigurasi yang lain. Perlu diperhatikan bahwa suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain.

  • ID Fitur (FunctionID/FuncId): 1.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    refer_domain_allow_list

    String

    Ya

    Daftar putih. Pisahkan beberapa nama domain dengan koma (,).

    example.aliyundoc.com,demo.aliyundoc.com

    allow_empty

    String

    Tidak

    Menentukan apakah permintaan dengan header Referer kosong diizinkan mengakses sumber daya CDN. Nilai yang valid:

    • on: Mengizinkan akses.

    • off (default): Menolak akses.

    off

    redirect_url

    String

    Tidak

    URL pengalihan. Jika header Referer dari permintaan pengguna tidak sesuai dengan daftar putih, permintaan tersebut akan diblokir. Alih-alih mengembalikan kode status 403, CDN akan mengembalikan kode status 302 dan header Location. Parameter ini menentukan nilai header Location tersebut. URL harus diawali dengan `http://` atau `https://`.

    http://www.example.com

    disable_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 eksak nama domain yang diizinkan.

    • Jika nilainya on:

      • Pencocokan tepat didukung.

        • Jika Anda memasukkan example.com ke dalam daftar putih, maka akan cocok dengan example.com.

        • Jika Anda memasukkan a*b.example.com ke dalam daftar putih, maka akan cocok dengan a<any characters>b.example.com.

      • Pencocokan akhiran tidak didukung.

    • Jika nilainya off (default):

      • Pencocokan tepat tidak didukung.

      • Pencocokan akhiran didukung.

        • Jika Anda memasukkan example.com ke dalam daftar putih, maka akan cocok dengan example.com dan <any characters>.example.com.

        • Jika Anda memasukkan a*b.example.com ke dalam daftar putih, maka akan cocok dengan a<any characters>b.example.com dan <any characters>.a<any characters>b.example.com.

    off

    ignore_scheme

    String

    Tidak

    Menentukan apakah skema dalam header Referer diabaikan. 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.com

    • Jika 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 mengenai 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 dapat mengonfigurasi yang lain. Perlu diperhatikan bahwa suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain.

  • ID Fitur (FunctionID/FuncId): 5.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    refer_domain_deny_list

    String

    Ya

    Daftar hitam. Pisahkan beberapa nama domain dengan koma (,).

    example.aliyundoc.com,demo.aliyundoc.com

    allow_empty

    String

    Tidak

    Menentukan apakah permintaan dengan header Referer kosong diizinkan mengakses sumber daya CDN:

    • on: Mengizinkan akses.

    • off: Menolak akses.

    off

    redirect_url

    String

    Tidak

    URL pengalihan. Jika header Referer dari permintaan pengguna cocok dengan daftar hitam, permintaan tersebut akan diblokir. Alih-alih mengembalikan kode status 403, CDN akan mengembalikan kode status 302 dan header Location. Parameter ini menentukan nilai header Location tersebut. URL harus diawali dengan `http://` atau `https://`.

    http://www.example.com

    disable_ast

    String

    Tidak

    Menentukan apakah pencocokan eksak diaktifkan untuk nama domain dalam daftar hitam. Jika Anda mengatur parameter ini ke `on`, pencocokan eksak diaktifkan.

    • Jika nilainya `on`:

      • Pencocokan tepat didukung.

        • Jika Anda menambahkan example.com ke daftar hitam, itu cocok dengan example.com.

        • Jika Anda menambahkan a*b.example.com ke daftar hitam, itu cocok dengan a<string apa saja>b.example.com.

      • Pencocokan akhiran tidak didukung.

    • Jika nilainya `off` (default):

      • Pencocokan tepat tidak didukung.

      • Pencocokan akhiran didukung.

        • Jika Anda menambahkan example.com ke daftar hitam, itu cocok dengan example.com dan <string apa saja>.example.com.

        • Jika Anda menambahkan a*b.example.com ke daftar hitam, itu cocok dengan a<string apa saja>b.example.com dan <string apa saja>.a<string apa saja>b.example.com.

    off

    ignore_scheme

    String

    Tidak

    Menentukan apakah skema dalam header Referer diabaikan. 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.com

    • Jika 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

    Diperlukan

    Deskripsi

    Contoh

    auth_m3u8

    String

    Tidak

    Menentukan apakah konten file M3U8 ditulis ulang. 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

    Tipe penandatanganan. Nilai 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 memiliki panjang 16 hingga 128 karakter dan dapat berisi huruf besar, huruf kecil, dan angka.

    1234567890123456789

    auth_key2

    String

    Tidak

    Kunci enkripsi 2. Kunci harus memiliki panjang 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.

    1.800

    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 valid:

    • on: Ini adalah mode default. Dalam mode ini, alamat IP pertama di sebelah kiri pada header X-Forwarded-For diperiksa. Alamat IP ini adalah alamat IP asal klien.

    • off: Dalam mode ini, alamat IP yang digunakan klien untuk membuat koneksi dengan titik kehadiran (PoP) CDN diperiksa.

    • all: Kedua alamat IP berikut diperiksa:

      • Alamat IP pertama di sebelah kiri pada header X-Forwarded-For, yaitu alamat IP asal klien.

      • Alamat IP yang digunakan klien untuk membuat koneksi dengan PoP CDN.

    all

    sign_param

    String

    Tidak

    Nama parameter penandatanganan. Parameter ini hanya berlaku ketika `auth_type` diatur ke `type_f`.

    sign

    time_param

    String

    Tidak

    Nama parameter timestamp. Parameter ini hanya berlaku ketika `auth_type` diatur ke `type_f`.

    time

    time_format

    String

    Tidak

    Format timestamp. Parameter ini hanya berlaku ketika `auth_type` diatur ke `type_f`.

    • dec: Desimal

    • hex: Heksadesimal

    hec

    path_encoding

    String

    Tidak

    Switch encoding URL. Nilai yang valid adalah `on` dan `off`. Parameter ini hanya berlaku 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 otentikasi jarak jauh. Untuk informasi lebih lanjut, lihat Konfigurasikan Otentikasi Jarak Jauh.

  • ID Fitur (FunctionID/FuncId): 258.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Contoh

    enable

    String

    Ya

    Menentukan apakah akan mengaktifkan otentikasi jarak jauh:

    • on: Aktifkan.

    • off: Nonaktifkan.

    on

    remote_auth_addr

    String

    Ya

    Alamat server otentikasi. Format: https://cdn.aliyun.com/auth atau http://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 otentikasi. `all` menunjukkan semua jenis file. Untuk menentukan beberapa jenis file, pisahkan dengan tanda pipa vertikal (|). Jenis file bersifat case-sensitive. Misalnya, `jpg` berbeda dengan `JPG`.

    all

    remote_auth_reserve_args

    String

    Ya

    Parameter yang dipertahankan dalam permintaan. Untuk menentukan beberapa parameter, pisahkan dengan tanda pipa vertikal (|). Parameter bersifat case-insensitive. 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 untuk ditambahkan. Untuk menentukan beberapa parameter, pisahkan dengan tanda vertikal (|). Parameter bersifat peka huruf besar-kecil. Contohnya, `key` tidak sama dengan `KEY`.

    empty

    remote_auth_reserve_header

    String

    Ya

    Header permintaan yang dipertahankan. Untuk menentukan beberapa header, pisahkan dengan tanda pipa vertikal (|). Header bersifat case-insensitive. 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 pipa vertikal (|). Header bersifat case-insensitive. 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 otentikasi ke CDN setelah otentikasi 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 otentikasi ke CDN setelah otentikasi gagal. Contoh: 403. Anda dapat menentukan beberapa kode status. Pisahkan dengan koma.

    403,404

    remote_auth_other_code_act

    String

    Tidak

    Aksi yang diambil CDN terhadap permintaan pengguna jika server otentikasi mengembalikan kode status yang bukan kode sukses maupun kegagalan. Nilai yang valid:

    • pass (default): Mengizinkan permintaan.

    • Reject: menolak.

    pass

    remote_auth_fail_resp_code

    Integer

    Ya

    Kode status respons yang dikembalikan CDN ke klien setelah otentikasi gagal. Contoh: 403.

    403

    remote_auth_timeout

    Integer

    Ya

    Periode waktu habis untuk otentikasi. Satuan: ms. Nilai maksimum adalah 3000.

    500

    remote_auth_timeout_action

    String

    Ya

    Aksi yang diambil saat otentikasi habis waktu. Nilai valid:

    • pass: CDN mengizinkan permintaan pengguna.

    • reject: CDN mengembalikan `remote_auth_fail_resp_code` kepada 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 mengenai 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 dapat mengonfigurasi yang lain. Perlu diperhatikan bahwa suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain.

  • ID Fitur (FunctionID/FuncId): 69.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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

    No

    Kode status respons kustom. Nilai default kosong, yang berarti kode status respons adalah 403. Anda dapat memasukkan angka tiga digit untuk menetapkan 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 pada header x-forwarded-for dari permintaan pengguna.

    • off: Menggunakan originating IP address of the connection.

    • all: Menggunakan baik alamat IP dalam header x-forwarded-for maupun originating IP address of the connection.

    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 konfigurasi konsol yang lebih rinci, 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 dapat mengonfigurasi yang lain. Suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Anda dapat memanggil operasi API DeleteSpecificConfig untuk menghapus konfigurasi yang ditentukan untuk nama domain.

  • ID Fitur (FunctionID/FuncId): 13.

  • Parameter:

    Parameter

    Tipe

    Diperlukan

    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

    No

    Kode status respons kustom. Nilai default kosong, yang berarti kode status respons adalah 403. Anda dapat memasukkan angka tiga digit untuk menetapkan 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 pada header x-forwarded-for dari permintaan pengguna.

    • off: Menggunakan originating IP address of the connection.

    • all: Menggunakan baik alamat IP dalam header x-forwarded-for maupun originating IP address of the connection.

    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

    Diperlukan

    Deskripsi

    Contoh

    ua

    String

    Ya

    String User-Agent. Karakter wildcard (*) didukung untuk mencocokkan string apa pun. Untuk menentukan beberapa nilai, pisahkan dengan tanda pipa vertikal (|). Contoh: *curl*|*IE*|*chrome*|*firefox*.

    *curl*|*IE*|*chrome*|*firefox*

    type

    String

    Ya

    Jenis daftar. Nilai yang valid:

    • black: Daftar hitam.

    • white: Daftar putih.

    Catatan

    Daftar 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"
    }

Optimisasi kinerja

tesla

  • Deskripsi: Mengonfigurasi optimalisasi HTML. Untuk informasi selengkapnya, lihat Optimalisasi HTML.

  • ID Fungsi (FunctionID/FuncId): 16.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    enable

    String

    Ya

    Menentukan apakah akan mengaktifkan optimalisasi HTML:

    • on: Mengaktifkan fitur.

    • off: Menonaktifkan fitur.

    on

    trim_js

    String

    Tidak

    Menentukan apakah kode JavaScript (JS) inline dalam HTML dioptimalkan:

    • Diaktifkan.

    • off (default): Menonaktifkan optimasi.

    off

    trim_css

    String

    Tidak

    Menentukan apakah kode Cascading Style Sheets (CSS) inline dalam HTML dioptimalkan:

    • on: Fitur diaktifkan.

    • off (default): Fitur dimatikan.

    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

    Diperlukan

    Deskripsi

    Example value

    enable

    String

    Ya

    Menentukan apakah akan mengaktifkan optimisasi 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

    Tipe

    Diperlukan

    Deskripsi

    Example value

    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 tertentu. Untuk informasi selengkapnya, lihat Ignore Parameters.

  • 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 satu dari keduanya. Jika salah satu fitur telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi fitur lainnya. Suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Untuk menghapus konfigurasi tertentu untuk suatu nama domain, panggil operasi DeleteSpecificConfig.

  • ID Fungsi (FunctionID/FuncId): 19.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    hashkey_args

    String

    Tidak

    Daftar parameter yang disimpan. 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 berlaku. Hanya fitur yang menambahkan parameter yang tetap berlaku.

    • off (default): Menonaktifkan fitur yang mengabaikan parameter. Fitur yang menyimpan, menambah, atau menghapus parameter tetap berlaku.

    Catatan

    Mengabaikan semua parameter untuk kunci cache memiliki prioritas lebih rendah dibandingkan menyimpan daftar parameter cache tertentu.

    on

    keep_oss_args

    String

    Ya

    Menentukan apakah parameter untuk permintaan pengambilan asal (origin fetch) disimpan:

    • 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 Ignore Parameters.

  • 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 satu dari keduanya. Jika salah satu fitur telah dikonfigurasi, Anda harus menghapus konfigurasinya terlebih dahulu sebelum mengonfigurasi fitur lainnya. Suatu fitur dianggap telah dikonfigurasi meskipun parameter switch-nya diatur ke `off`. Untuk menghapus konfigurasi tertentu untuk suatu nama domain, panggil operasi DeleteSpecificConfig.

  • ID Fungsi (FunctionID/FuncId): 75.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    ali_remove_args

    String

    Ya

    Parameter yang akan dihapus. Pisahkan beberapa parameter dengan spasi.

    Catatan

    Parameter yang tersisa digunakan sebagai argumen URL dalam kunci cache.

    test

    keep_oss_args

    String

    Ya

    Menentukan apakah parameter untuk permintaan pengambilan asal disimpan:

    • 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

    Type

    Required

    Deskripsi

    Example value

    aktifkan

    String

    Ya

    Menentukan apakah akan mengaktifkan pemrosesan gambar:

    • on: Mengaktifkan fitur.

    • Nonaktif: Menonaktifkan fitur.

    aktif

    jenis file

    String

    Ya

    Format gambar yang mendukung transkoding. Pisahkan beberapa format dengan tanda pipa vertikal (|). Nilai yang didukung adalah:

    • JPEG: Format citra JPEG.

    • JPG: Format citra JPG.

    • PNG: Format citra PNG.

    • WEBP: Format citra WEBP.

    • BMP: Format citra BMP.

    • GIF: Format citra GIF.

    • TIFF: Format citra TIFF.

    • JP2: Format citra JPEG 2000.

    jpg|jpeg|png

    webp

    String

    Tidak

    Menentukan apakah konversi otomatis ke WebP diaktifkan:

    • on: Mengaktifkan fitur.

    • off: Menonaktifkan fitur.

    aktif

    orient

    String

    Tidak

    Menentukan apakah akan mengaktifkan rotasi citra otomatis:

    • on: Mengaktifkan fitur.

    • off: Menonaktifkan fitur.

    Catatan

    Fitur ini hanya berlaku pada gambar yang memiliki properti rotasi.

    on

    slim

    Integer

    Tidak

    Pengurangan ukuran Citra. Atur persentase pengurangan. Nilainya bisa berupa bilangan bulat dari 0 hingga 100. Fitur ini mengurangi kualitas Citra 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 range origin fetch. Untuk instruksi lengkap, lihat Configure range origin fetch.

  • Feature ID (FunctionID atau FuncId): 31.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    enable

    String

    Ya

    Menentukan apakah akan mengaktifkan range origin fetch.

    • on: Mengaktifkan fitur.

    • off: Menonaktifkan fitur.

    • force: Memaksa fitur untuk 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 Configure video seeking.

  • Feature ID (FunctionID atau FuncId): 30.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    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 Configure Audio and Video Listening.

  • Feature ID (FunctionID atau FuncId): 204.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    enable

    String

    Ya

    Menentukan apakah akan mengaktifkan streaming hanya audio.

    • 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 Configure audio or video preview.

  • Feature ID (FunctionID atau FuncId): 205.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    enable

    String

    Ya

    Menentukan apakah akan mengaktifkan pratinjau audio atau video.

    • on: Mengaktifkan fitur.

    • off: Menonaktifkan fitur.

    Catatan

    Fitur 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 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 Configure M3U8 encryption and rewrite.

  • Feature ID (FunctionID atau FuncId): 253.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    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.

    contoh

  • Contoh konfigurasi:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "hls_token_rewrite"
        }],
        "DomainNames": "example.com",
    }

Pembatasan laju

limit_rate

  • Deskripsi: Konfigurasikan batas laju untuk satu permintaan.

  • FuncId: 72.

  • Deskripsi

    Anda dapat mengonfigurasi ali_limit_rate untuk membatasi laju permintaan berdasarkan parameter dalam URL permintaan dan menetapkan waktu mulai serta waktu akhir untuk pembatasan laju.

    Anda dapat menerapkan pembatasan laju untuk parameter URL permintaan dengan menggabungkan parameter traffic_limit_arg dan traffic_limit_unit.

    Anda dapat menetapkan waktu mulai dan waktu akhir untuk batas kecepatan menggunakan parameter ali_limit_start_hour dan ali_limit_end_hour.

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example

    ali_limit_rate

    String

    Ya

    Batas laju untuk satu permintaan, dalam Byte/s. Contohnya, 200 KByte/s atau 1 MByte/s. Nilainya berupa angka diikuti satuan (k atau m).

    Nilai minimum adalah 100k. Nilai di bawah 100k akan dianggap sebagai 100k.

    • 1m: Batas laju untuk satu permintaan adalah 1 MByte/s.

    • 100k: Batas laju untuk satu permintaan 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 satuan (k atau m).

    1000

    traffic_limit_arg

    String

    Tidak

    Nama parameter pembatasan laju yang diambil dari URL permintaan, misalnya rate.

    Jika permintaan tidak mengandung parameter ini, batas laju default yang ditentukan oleh ali_limit_rate akan diterapkan. Untuk menonaktifkan pembatasan laju saat parameter ini tidak ada dalam permintaan, atur ali_limit_rate ke 0k.

    rate

    traffic_limit_unit

    String

    Tidak

    Satuan 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, maka batas lajunya adalah 1 MByte/s.

    Batas laju minimum adalah 100k. Jika laju yang dihitung lebih rendah dari 100k, sistem akan menggunakan 100k.

    m

    ali_limit_start_hour

    Integer

    Tidak

    Jam ketika pembatasan laju dimulai. Nilainya harus berupa bilangan bulat dari 0 hingga 24 dan harus lebih kecil dari waktu akhir. Nilai default-nya adalah 0.

    Catatan

    Nilai ini merepresentasikan jam dalam format 24 jam. Misalnya, 0 merepresentasikan pukul 00:00:00 dan 24 merepresentasikan pukul 24:00:00.

    20

    ali_limit_end_hour

    Integer

    Tidak

    Jam ketika pembatasan laju berakhir. Nilainya harus berupa bilangan bulat dari 0 hingga 24 dan harus lebih besar dari waktu mulai. Nilai default-nya adalah 24.

    23

  • Contoh 1: Tetapkan batas laju untuk satu permintaan menjadi 1 MB/s.

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ali_limit_rate",
                "argValue": "1m"
            }],
            "functionName": "limit_rate"
        }],
        "DomainNames": "example.com"
    }
  • Contoh 2: Tetapkan batas laju default sebesar 1 MB/s untuk satu permintaan. Jika URL permintaan mengandung parameter `rate`, nilainya akan digunakan sebagai batas laju. Misalnya, jika permintaan mencakup `rate=200`, maka 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

    Diperlukan

    Deskripsi

    Example

    rule

    String

    Ya

    Aturan DSL.

    if eq($uri, '/') {\n rewrite('https://example.com/index.html', 'redirect')\n}

    pri

    Integer

    Ya

    Prioritas. Nilai valid: [0, 999]. Nilai yang lebih kecil menunjukkan prioritas yang lebih tinggi.

    Catatan

    Prioritas untuk aturan pada posisi head dan foot bersifat independen.

    0

    enable

    String

    Ya

    Menentukan apakah aturan diaktifkan.

    • on: Aturan diaktifkan.

    • off: Menonaktifkan fungsi.

    on

    name

    String

    Ya

    Nama aturan. Nama hanya boleh berisi huruf dan garis bawah (_).

    test

    pos

    String

    Tidak

    Posisi di mana aturan dieksekusi. Nilai valid:

    • head (default): Aturan dieksekusi di awal alur pemrosesan permintaan.

    • foot: Aturan dieksekusi di akhir alur pemrosesan permintaan.

    head

    brk

    String

    Tidak

    Menentukan apakah eksekusi aturan berikutnya dihentikan. Nilai yang valid:

    • on: Jika aturan ini terkena, semua aturan berikutnya pada posisi eksekusi saat ini dilewati.

    • off (default): Jika aturan ini terkena, aturan berikutnya tetap dieksekusi.

    off

    option

    String

    Tidak

    Bidang ekstensi.

    Empty

    grammar

    String

    Tidak

    Sintaksis aturan. Nilai 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"
    }

Fungsi 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

kondisi

  • 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 suatu konfigurasi berlaku untuk permintaan tertentu. Hal ini memberikan kontrol yang lebih fleksibel dan tepat atas cara kebijakan konfigurasi Alibaba Cloud Content Delivery Network (CDN) dijalankan. 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

    Diperlukan

    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 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 isi ekspresi kondisional.

    \"matchType\":\"clientipVer\"

    `matchType` menentukan jenis informasi dalam permintaan pengguna yang akan dicocokkan.

    \"matchObject\":\"CONNECTING_IP\"

    `matchObject` memperjelas tipe pencocokan. Misalnya, alamat IP klien dapat berupa "connecting IP" atau "X-Forwarded-For (XFF) IP".

    \"matchOperator\":\"equals\"

    `matchOperator` menentukan aksi yang dilakukan untuk operasi pencocokan.

    \"matchValue\":\"v6\"

    `matchValue` adalah nilai yang telah ditentukan untuk dicocokkan dengan informasi dalam permintaan pengguna.

    \"negate\":false

    `negate` menentukan apakah hasil ekspresi kondisional harus dinegasikan. Nilai yang valid adalah `true` dan `false`.

    \"name\":\"example\"

    `name` adalah nama kondisi aturan.

    \"status\":\"enable\"

    `status` adalah status aktif dari 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 lengkap 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 membuat konfigurasi mesin aturan, Anda dapat mengaitkannya dengan konfigurasi fitur lainnya. Untuk daftar fitur yang saat ini mendukung referensi ke konfigurasi mesin aturan, lihat Mesin aturan. Hal ini memberikan kontrol yang lebih fleksibel dan tepat atas cara kebijakan konfigurasi CDN dijalankan. Sebagai contoh, 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 ketika fungsi adalah `condition` (mesin aturan).

QUIC

iquic

  • Deskripsi: Mengonfigurasi parameter dasar QUIC. Untuk informasi selengkapnya, lihat Configure the QUIC protocol.

  • ID Fungsi (FunctionID/FuncId): 281.

  • Deskripsi parameter:

    Parameter

    Tipe

    Diperlukan

    Deskripsi

    Example value

    iquic_enable

    String

    Ya

    Menentukan apakah akan mengaktifkan protokol QUIC:

    • on: Mengaktifkan protokol.

    • off: Mematikan.

    on

  • Contoh Konfigurasi:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "iquic_enable",
                "argValue": "on"
            }],
            "functionName": "iquic"
        }],
        "DomainNames": "example.com"
    }