Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jenis kondisi untuk aturan pendengar
Ketentuan menentukan kriteria yang harus dipenuhi oleh permintaan masuk agar aturan pendengar berlaku. Jika permintaan cocok dengan kondisi untuk aturan, permintaan akan ditangani seperti yang ditentukan oleh tindakan aturan. Setiap syarat peraturan memiliki jenis dan konfigurasi informasi. Application Load Balancers mendukung jenis kondisi berikut untuk aturan pendengar.
Jenis kondisi
host-header
-
Rutekan berdasarkan nama host dari setiap permintaan. Untuk informasi selengkapnya, lihat Syarat host.
http-header
-
Rutekan berdasarkan header HTTP untuk setiap permintaan. Untuk informasi selengkapnya, lihat Syarat header HTTP.
http-request-method
-
Rutekan berdasarkan metode permintaan HTTP dari setiap permintaan. Untuk informasi selengkapnya, lihat Syarat metode permintaan HTTP.
path-pattern
-
Rute berdasarkan pola jalur dalam permintaan URLs. Untuk informasi selengkapnya, lihat Syarat jalur.
query-string
-
Rute berdasarkan key/value pasangan atau nilai dalam string kueri. Untuk informasi selengkapnya, lihat Syarat string kueri.
source-ip
-
Rutekan berdasarkan alamat IP sumber dari setiap permintaan. Untuk informasi selengkapnya, lihat Syarat alamat IP sumber.
Dasar-dasar kondisi
-
Setiap peraturan secara opsional dapat menyertakan hingga salah satu dari masing-masing syarat berikut:
host-header
,http-request-method
,path-pattern
, dansource-ip
. Setiap peraturan dapat juga secara opsional mencakup satu atau lebih dari masing-masing syarat berikut:http-header
danquery-string
. -
Anda dapat menentukan hingga tiga evaluasi kecocokan per syarat. Misalnya, untuk masing-masing syarat
http-header
, Anda dapat menentukan hingga tiga string untuk dibandingkan dengan nilai header HTTP dalam permintaan. Syarat terpenuhi jika salah satu string cocok dengan nilai header HTTP. Untuk mengharuskan semua string cocok, buat satu syarat per evaluasi kecocokan. -
Anda dapat menentukan hingga lima evaluasi kecocokan per peraturan. Misalnya, Anda dapat membuat peraturan dengan lima ketentuan di mana setiap syarat memiliki satu evaluasi kecocokan.
-
Anda dapat memasukkan karakter wildcard dalam evaluasi kecocokan untuk syarat
http-header
,host-header
,path-pattern
, danquery-string
. Ada batas lima karakter wildcard per peraturan. -
Peraturan hanya diterapkan pada karakter ASCII yang terlihat; karakter kontrol (0x00 hingga 0x1f dan 0x7f) dikecualikan.
Demo
Untuk demo, lihat Perutean permintaan lanjutan
Syarat header HTTP
Anda dapat menggunakan syarat header HTTP untuk mengonfigurasi aturan yang merutekan permintaan berdasarkan header HTTP untuk permintaan tersebut. Anda dapat menentukan nama-nama bidang header HTTP standar atau kustom. Nama header dan evaluasi kecocokan tidak peka huruf besar/kecil. Karakter wildcard berikut didukung dalam string perbandingan: * (cocok dengan 0 karakter atau lebih) dan ? (cocok persis dengan 1 karakter). Karakter wildcard tidak didukung dalam nama header.
Ketika atribut Application Load Balancer routing.http.drop_invalid_header_fields
diaktifkan, itu akan menjatuhkan nama header yang tidak sesuai dengan ekspresi reguler (). A-Z,a-z,0-9
Nama header yang tidak sesuai dengan ekspresi reguler juga dapat ditambahkan.
contoh Contoh kondisi header HTTP untuk AWS CLI
Anda dapat menentukan syarat ketika membuat atau memodifikasi peraturan. Untuk informasi lebih lanjut, lihat perintah buat-peraturan dan modifikasi-peraturan. Syarat berikut dipenuhi oleh permintaan dengan header User-Agent yang cocok dengan salah satu string yang ditentukan.
[ { "Field": "http-header", "HttpHeaderConfig": { "HttpHeaderName": "User-Agent", "Values": ["*Chrome*", "*Safari*"] } } ]
Syarat metode permintaan HTTP
Anda dapat menggunakan syarat metode permintaan HTTP untuk mengonfigurasi aturan yang merutekan permintaan berdasarkan metode permintaan HTTP dari permintaan tersebut. Anda dapat menentukan metode HTTP standar atau kustom. Evaluasi kecocokan peka terhadap huruf besar-kecil. Karakter wildcard tidak didukung; oleh karena itu, nama metode harus sama persis.
Kami menyarankan Anda merutekan permintaan GET dan HEAD dengan cara yang sama, karena respons terhadap permintaan HEAD mungkin di-cache.
contoh Contoh kondisi metode HTTP untuk AWS CLI
Anda dapat menentukan syarat ketika membuat atau memodifikasi peraturan. Untuk informasi lebih lanjut, lihat perintah buat-peraturan dan modifikasi-peraturan. Syarat berikut dipenuhi oleh permintaan yang menggunakan metode yang ditentukan.
[ { "Field": "http-request-method", "HttpRequestMethodConfig": { "Values": ["CUSTOM-METHOD"] } } ]
Syarat host
Anda dapat menggunakan syarat host untuk menentukan peraturan yang merutekan permintaan berdasarkan nama host di header host (juga dikenal sebagai perutean berbasis host). Ini memungkinkan Anda untuk mendukung beberapa subdomain dan domain tingkat atas yang berbeda menggunakan penyeimbang beban tunggal.
Nama host tidak peka huruf besar/kecil, dapat memiliki panjang hingga 128 karakter, dan dapat berisi salah satu dari karakter berikut:
-
A–Z, a–z, 0–9
-
- .
-
* (cocok dengan 0 karakter atau lebih)
-
? (cocok tepat dengan 1 karakter)
Anda harus menyertakan setidaknya satu karakter ".". Anda hanya dapat memasukkan karakter alfabet setelah akhir karakter ".".
Contoh nama host
-
example.com
-
test.example.com
-
*.example.com
Peraturan *.example.com cocok dengan test.example.com tetapi tidak cocok dengan example.com.
contoh Contoh kondisi header host untuk AWS CLI
Anda dapat menentukan syarat ketika membuat atau memodifikasi peraturan. Untuk informasi lebih lanjut, lihat perintah buat-peraturan dan modifikasi-peraturan. Syarat berikut dipenuhi oleh permintaan dengan header host yang cocok dengan string yang ditentukan.
[ { "Field": "host-header", "HostHeaderConfig": { "Values": ["*.example.com"] } } ]
Syarat jalur
Anda dapat menggunakan syarat jalur untuk menentukan peraturan yang merutekan permintaan berdasarkan URL dalam permintaan (juga dikenal sebagai perutean berbasis jalur).
Pola jalur hanya diterapkan ke jalur URL, bukan ke parameter kuerinya. Ini hanya diterapkan pada karakter ASCII yang terlihat; karakter kontrol (0x00 hingga 0x1f dan 0x7f) dikecualikan.
Evaluasi aturan dilakukan hanya setelah normalisasi URI terjadi.
Pola jalur peka huruf besar-kecil, panjangnya bisa hingga 128 karakter, dan bisa berisi salah satu karakter berikut.
-
A–Z, a–z, 0–9
-
_ - . $ / ~ " ' @ : +
-
& (menggunakan &)
-
* (cocok dengan 0 karakter atau lebih)
-
? (cocok tepat dengan 1 karakter)
Jika versi protokol adalah gRPC, syaratnya bisa spesifik untuk paket, layanan, atau metode.
Contoh pola jalur HTTP
-
/img/*
-
/img/*/pics
Contoh pola jalur gRPC
-
/package
-
/package.service
-
/package.service/method
Pola jalur digunakan untuk merutekan permintaan tetapi tidak mengubahnya. Misalnya, jika sebuah peraturan memiliki pola jalur /img/*
, aturan meneruskan permintaan untuk /img/picture.jpg
ke grup target yang ditentukan sebagai permintaan untuk /img/picture.jpg
.
contoh Contoh kondisi pola jalur untuk AWS CLI
Anda dapat menentukan syarat ketika membuat atau memodifikasi peraturan. Untuk informasi lebih lanjut, lihat perintah buat-peraturan dan modifikasi-peraturan. Syarat berikut dipenuhi oleh permintaan dengan URL yang berisi string yang ditentukan.
[ { "Field": "path-pattern", "PathPatternConfig": { "Values": ["/img/*"] } } ]
Syarat string kueri
Anda dapat menggunakan kondisi string kueri untuk mengonfigurasi aturan yang merutekan permintaan berdasarkan key/value pasangan atau nilai dalam string kueri. Evaluasi kecocokan tidak peka huruf besar-kecil. Karakter wildcard berikut didukung: * (cocok dengan 0 karakter atau lebih) dan ? (cocok persis dengan 1 karakter).
contoh Contoh kondisi string kueri untuk AWS CLI
Anda dapat menentukan syarat ketika membuat atau memodifikasi peraturan. Untuk informasi lebih lanjut, lihat perintah buat-peraturan dan modifikasi-peraturan. Kondisi berikut dipenuhi oleh permintaan dengan string kueri yang mencakup key/value sepasang “version=v1" atau kunci apa pun yang disetel ke “contoh”.
[ { "Field": "query-string", "QueryStringConfig": { "Values": [ { "Key": "version", "Value": "v1" }, { "Value": "*example*" } ] } } ]
Syarat alamat IP sumber
Anda dapat menggunakan syarat alamat IP sumber untuk mengonfigurasi aturan yang merutekan permintaan berdasarkan alamat IP sumber permintaan. Alamat IP harus ditentukan dalam format CIDR. Anda dapat menggunakan keduanya IPv4 dan IPv6 alamat. Karakter wildcard tidak didukung. Anda tidak dapat menentukan 255.255.255.255/32
CIDR untuk kondisi aturan IP sumber.
Jika klien berada di belakang proxy, ini adalah alamat IP proxy, bukan alamat IP klien.
Kondisi ini tidak dipenuhi oleh alamat di X-Forwarded-For header. Untuk mencari alamat di X-Forwarded-For header, gunakan http-header
kondisi.
contoh Contoh kondisi IP sumber untuk AWS CLI
Anda dapat menentukan syarat ketika membuat atau memodifikasi peraturan. Untuk informasi lebih lanjut, lihat perintah buat-peraturan dan modifikasi-peraturan. Syarat berikut dipenuhi oleh permintaan dengan alamat IP sumber di salah satu blok CIDR yang ditentukan.
[ { "Field": "source-ip", "SourceIpConfig": { "Values": ["192.0.2.0/24", "198.51.100.10/32"] } } ]