全部产品
Search
文档中心

Edge Security Acceleration:Operator-operator Pencocokan

更新时间:Dec 04, 2025

Operator pencocokan dalam aturan mencakup operator perbandingan dan logika. Anda dapat menggunakan lebih dari 10 jenis operator untuk membangun berbagai ekspresi aturan.

Operator Perbandingan

Operator perbandingan digunakan untuk membandingkan nilai input dalam permintaan dengan nilai yang dikonfigurasi dalam sebuah ekspresi.

eq

Menunjukkan bahwa nilai input dalam permintaan sama dengan nilai pencocokan.

  • Nama Operator: sama dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (http.host eq "www.example.com")

ne

Menunjukkan bahwa nilai input dalam permintaan tidak sama dengan nilai pencocokan.

  • Nama Operator: tidak sama dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (http.host ne "www.example.com")

contains

Menunjukkan bahwa nilai input dalam permintaan mengandung string tertentu.

  • Nama Operator: mengandung

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (http.host contains "example.com")

not...contains

Menunjukkan bahwa nilai input dalam permintaan tidak mengandung string tertentu.

  • Nama Operator: tidak mengandung

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (not http.host contains "example.com")

matches

Menunjukkan bahwa nilai input dalam permintaan sesuai dengan ekspresi reguler tertentu. Kompatibel dengan Perl Compatible Regular Expressions (PCRE).

Catatan

Hanya paket Premium dan Enterprise yang mendukung ekspresi reguler.

  • Nama Operator: cocok dengan ekspresi reguler yang ditentukan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (http.host matches "(www|blog)\.example\.com")

not...matches

Menunjukkan bahwa nilai input dalam permintaan tidak sesuai dengan ekspresi reguler tertentu. Kompatibel dengan PCRE.

Catatan

Hanya paket Premium dan Enterprise yang mendukung ekspresi reguler.

  • Nama Operator: tidak cocok dengan ekspresi reguler yang ditentukan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (not http.host matches "(www|blog)\.example\.com")

in

Menunjukkan bahwa nilai input dalam permintaan mengandung salah satu atau beberapa nilai pencocokan yang telah ditentukan. Anda juga dapat menggunakan $ secara bersamaan untuk menerapkan pengelompokan.

  • Nama operator: contains one of the following items

  • Tipe Nilai Pencocokan: Array

  • Contoh:

    (http.host in {"www.example-1.com" "www.example-2.com"})

    ( ip.src in $<LIST_NAME>)

not...in

Menunjukkan bahwa nilai input dalam permintaan tidak mengandung semua nilai pencocokan yang telah ditentukan. Anda juga dapat menggunakan $ secara bersamaan untuk menerapkan pengelompokan.

  • Nama operator: does not contain any of the following items

  • Tipe Nilai Pencocokan: Array

  • Contoh:

    (not http.host in {"www.example-1.com" "www.example-2.com"})

    (not ip.src in $<LIST_NAME>)

starts_with

Menunjukkan bahwa awal nilai input dalam permintaan sesuai dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: dimulai dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (starts_with(http.host, "blog"))

not starts_with

Menunjukkan bahwa awal nilai input dalam permintaan tidak sesuai dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: tidak dimulai dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (not starts_with(http.host, "blog"))

ends_with

Menunjukkan bahwa akhir nilai input dalam permintaan sesuai dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: diakhiri dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (ends_with(http.host, "cn"))

not ends_with

Menunjukkan bahwa akhir nilai input dalam permintaan tidak sesuai dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: tidak diakhiri dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (not ends_with(http.host, "cn"))

le

Menunjukkan bahwa nilai input dalam permintaan kurang dari atau sama dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: kurang dari atau sama dengan

  • Tipe Nilai Pencocokan: int

  • Contoh:

    (ip.geoip.asnum le 45104)

ge

Menunjukkan bahwa nilai input dalam permintaan lebih dari atau sama dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: lebih besar dari atau sama dengan

  • Tipe Nilai Pencocokan: int

  • Contoh:

    (ip.geoip.asnum ge 45104)

lt

Menunjukkan bahwa nilai input dalam permintaan kurang dari nilai pencocokan yang telah ditentukan.

  • Nama Operator: kurang dari

  • Tipe Nilai Pencocokan: int

  • Contoh:

    (ip.geoip.asnum lt 45104)

gt

Menunjukkan bahwa nilai input dalam permintaan lebih dari nilai pencocokan yang telah ditentukan.

  • Nama Operator: lebih besar dari

  • Tipe Nilai Pencocokan: int

  • Contoh:

    (ip.geoip.asnum gt 45104)

len eq

Menunjukkan bahwa panjang nilai input dalam permintaan sama dengan nilai pencocokan yang telah ditentukan.

  • Nama Operator: panjang sama dengan

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (len(http.request.cookies["session"]) eq 330688)

len gt

Menunjukkan bahwa panjang nilai input dalam permintaan lebih dari nilai pencocokan yang telah ditentukan.

  • Nama Operator: panjang lebih besar dari

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (len(http.request.cookies["session"]) gt 330688)

len lt

Menunjukkan bahwa panjang nilai input dalam permintaan kurang dari nilai pencocokan yang telah ditentukan.

  • Nama Operator: panjang kurang dari

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (len(http.request.cookies["session"]) lt 330688)

exists

Memeriksa apakah nilai yang ditentukan ada dalam permintaan.

  • Nama operator: exists

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (exists(http.request.headers["User-Agent"]))

not exists

Memeriksa apakah nilai yang ditentukan tidak ada dalam permintaan.

  • Nama Operator: tidak ada

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (not exists(http.request.headers["User-Agent"]))

Operator Lainnya

lower

Mengonversi huruf dari nilai input dalam permintaan menjadi huruf kecil jika nilai permintaan bersifat case-insensitive.

  • Nama Operator: tidak peka huruf besar/kecil

  • Tipe Nilai Pencocokan: String

  • Contoh:

    (lower(http.request.uri))

Operator Logika

Operator logika digunakan untuk menggabungkan beberapa ekspresi menjadi sebuah ekspresi majemuk.

not

Menjalankan operator logika NOT pada suatu ekspresi.

  • Nama Operator: logika NOT

  • Contoh:

    not (http.host )

and

Menunjukkan bahwa permintaan harus memenuhi dua ekspresi atau lebih.

  • Nama Operator: logika AND

  • Contoh:

    (http.host eq "www.example.com" and ip.geoip.country eq "CN")

or

Menunjukkan bahwa permintaan hanya perlu memenuhi salah satu dari ekspresi yang ditentukan.

  • Nama Operator: logika OR

  • Contoh:

    (http.host eq "www.example.com") or (ip.geoip.country eq "CN")