全部产品
Search
文档中心

CDN:Variabel bawaan EdgeScript

更新时间:Jun 27, 2025

Topik ini menjelaskan variabel bawaan EdgeScript dan Variabel NGINX yang sesuai.

Catatan
  • Tanda dolar ($) sebelum variabel menunjukkan bahwa variabel tersebut adalah variabel bawaan. Anda dapat menghapus tanda dolar sesuai kebutuhan bisnis Anda.

  • Hindari menetapkan nilai ke variabel bawaan dengan cara yang sama seperti parameter.

  • Anda dapat menentukan maksimal 200 variabel dalam sebuah skrip. Untuk menggunakan lebih dari 200 variabel, pisahkan fungsinya.

Tabel berikut menjelaskan variabel bawaan EdgeScript.

Variabel bawaan

Deskripsi

Variabel NGINX

$arg_{name}

Nilai dari parameter name dalam query string. Query string mewakili parameter permintaan dalam permintaan HTTP.

$arg_

Catatan

Jika bidang {name} mengandung tanda hubung (-), req_uri_arg digunakan untuk mengekstrak nilai header alih-alih $arg_. Jika permintaannya adalah http://example.com/1.jpg?example-demo=123, nilai header diekstraksi berdasarkan req_uri_arg('example-demo').

$http_{name}

Nilai dari bidang nama dalam header permintaan.

$http_

Catatan

Tanda hubung (-) dalam bidang {name} harus diganti dengan garis bawah (_). Sebagai contoh, X-USER-ID harus diubah menjadi $http_x_user_id.

$cookie_{name}

Nilai dari bidang nama dalam header cookie permintaan.

$cookie_

Catatan

Jika bidang {name} mengandung tanda hubung (-), req_cookie digunakan untuk mengekstrak nilai header alih-alih $cookie_. Jika permintaannya adalah cookie:example-demo=123, nilai header diekstraksi berdasarkan req_cookie('example-demo'.

$scheme

Tipe protokol.

$scheme

$server_protocol

Versi protokol.

$server_protocol

$host

Host asli.

$host

$uri

URI asli.

Tidak ada

$args

$args mewakili semua parameter permintaan dalam permintaan HTTP, tidak termasuk tanda tanya (?). Dalam permintaan http://example.aliyundoc.com/1k.file?k1=v1&k2=v2:

  • $arg_k1 mengembalikan nilai dari parameter k1: v1.

  • $args digunakan untuk mengembalikan seluruh query string: k1=v1&k2=v2. Tanda tanya (?) tidak termasuk.

$args

$request_method

Metode permintaan.

$request_method

$request_uri

Konten dari uri+'?'+args.

$request_uri

$remote_addr

Alamat IP yang digunakan oleh klien untuk terhubung ke titik kehadiran (POPs).

$remote_addr

Fungsi pemisahan

Jika aturan Anda mencakup lebih dari 200 variabel, pisahkan fungsi asli menjadi beberapa fungsi yang ditentukan pengguna. Pastikan setiap fungsi yang ditentukan pengguna mencakup tidak lebih dari 200 variabel.

Berikut adalah contohnya:

#Jika variabel melebihi batas, pisahkan seperti ini:
def judeg_arg() {
  #Logika penilaian parameter
  x
  x
}

def judeg_time() {
  #Logika penilaian waktu
  x
  x
}

def judeg_token() {
  #Logika penilaian enkripsi
  x
  x
}

judeg_arg()
judeg_time()
judeg_token()