全部产品
Search
文档中心

Edge Security Acceleration:Variabel bawaan EdgeScript

更新时间:Jun 21, 2025

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

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

  • Jangan memberikan nilai pada variabel bawaan seperti halnya 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_

null

Jika bidang {name} mengandung tanda hubung (-), req_uri_arg digunakan alih-alih $arg_ untuk mengekstrak nilai header. 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_

null

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_

null

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

$scheme

Jenis 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

Ketika aturan Anda mencakup lebih dari 200 variabel, pisahkan fungsi asli menjadi beberapa fungsi yang ditentukan pengguna. Pastikan setiap fungsi yang ditentukan pengguna memiliki 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()