Bagikan melalui


Bagaimana permintaan dicocokkan dengan konfigurasi rute

Rute di Azure Front Door menentukan bagaimana lalu lintas ditangani ketika permintaan masuk tiba di tepi Azure Front Door. Pengaturan rute menetapkan hubungan antara domain dan grup asal. Dengan menggunakan fitur lanjutan seperti Pola untuk Mencocokkan dan Seperangkat aturan, Anda dapat memiliki kontrol terperinci atas lalu lintas ke sumber daya backend Anda.

Catatan

Saat Anda menggunakan seperangkat aturan Front Door, Anda dapat mengonfigurasi aturan untuk mengambil alih grup asal untuk permintaan. Grup asal yang ditetapkan oleh seperangkat aturan mengambil alih proses perutean yang dijelaskan dalam artikel ini.

Penting

Azure Front Door (klasik) akan dihentikan pada 31 Maret 2027. Untuk menghindari gangguan layanan apa pun, penting untuk memigrasikan profil Azure Front Door (klasik) Anda ke Azure Front Door Standard atau tingkat Premium paling lambat Maret 2027. Untuk informasi selengkapnya, lihat Penghentian Azure Front Door (klasik).

Ketika permintaan tiba di tepi Azure Front Door (klasik), salah satu langkah pertama adalah menentukan cara merutekan permintaan yang cocok ke sumber daya backend lalu mengambil tindakan yang ditentukan dalam konfigurasi perutean. Dokumen ini menjelaskan bagaimana Front Door menentukan konfigurasi rute mana yang akan digunakan saat memproses permintaan.

Struktur konfigurasi rute Front Door

Aturan perutean Front Door terdiri dari dua bagian utama: "sisi kiri" dan "sisi kanan". Front Door cocok dengan permintaan masuk ke sisi kiri rute, sementara sisi kanan menentukan bagaimana permintaan diproses.

Kecocokan masuk (sisi kiri)

Properti berikut menentukan apakah permintaan masuk cocok dengan aturan perutean (sisi kiri):

  • Protokol HTTP - HTTP atau HTTPS
  • Domain - Misalnya: www.foo.com, *.bar.com
  • Jalur - Misalnya: /*, /users/*, /file.gif

Properti ini diperluas secara internal sehingga setiap kombinasi Protokol/Domain/Jalur adalah kumpulan kecocokan potensial.

Keputusan perutean (sisi kanan)

Keputusan tentang cara memproses permintaan tergantung pada apakah penembolokan diaktifkan untuk rute. Jika respons cache tidak tersedia, permintaan diteruskan ke asal yang sesuai.

Pencocokan rute

Bagian ini menjelaskan bagaimana Front Door cocok dengan permintaan dengan aturan perutean. Prinsip dasarnya adalah bahwa Front Door selalu cocok dengan permintaan yang paling spesifik dengan mengevaluasi properti "sisi kiri": protokol, domain, dan jalur, dalam urutan tersebut.

Pencocokan host frontend

Azure Front Door menggunakan langkah-langkah berikut untuk mencocokkan host frontend:

  1. Periksa rute dengan kecocokan yang tepat pada host frontend.
  2. Jika tidak ada kecocokan yang tepat yang ditemukan, permintaan ditolak dengan kesalahan 404: Permintaan Buruk.

Tabel berikut mengilustrasikan tiga aturan perutean yang berbeda dengan host dan jalur frontend mereka:

Aturan perutean Host frontend Jalur
A www.contoso.com /*
B www.contoso.com /pengguna/*
C www.fabrikam.com, foo.adventure-works.com /*, /gambar/*

Tabel berikut ini memperlihatkan hasil yang cocok untuk aturan perutean dalam tabel sebelumnya:

Host frontend masuk Aturan perutean yang cocok
www.contoso.com A, B
www.fabrikam.com C
images.fabrikam.com Kesalahan 404: Permintaan Buruk
foo.adventure-works.com C
contoso.com Kesalahan 404: Permintaan Buruk
www.adventure-works.com Kesalahan 404: Permintaan Buruk
www.northwindtraders.com Kesalahan 404: Permintaan Buruk

Pencocokan jalur

Setelah Azure Front Door menentukan host frontend tertentu dan memfilter kemungkinan aturan perutean, Azure Front Door memilih aturan perutean berdasarkan jalur permintaan. Logika berikut digunakan:

  1. Periksa aturan perutean dengan kecocokan yang tepat dengan jalur permintaan.
  2. Jika tidak ada kecocokan yang tepat yang ditemukan, cari aturan perutean dengan jalur kartubebas yang cocok.
  3. Jika tidak ada jalur yang cocok yang ditemukan, permintaan ditolak dengan kesalahan 404: Permintaan Buruk.

Catatan

Karakter * kartubebas hanya valid untuk jalur yang tidak memiliki karakter lain setelahnya. Selain itu, karakter * wildcard harus didahului oleh garis miring /. Jalur tanpa kartubebas dianggap sebagai jalur pencocokan yang tepat. Jalur yang berakhiran garis miring / juga merupakan jalur pencocokan yang tepat. Pastikan jalur Anda mengikuti aturan ini untuk menghindari kesalahan.

Catatan

  • Jalur tanpa kartubebas dianggap sebagai jalur pencocokan yang tepat. Jalur yang diakhir / dengan juga merupakan kecocokan yang tepat.
  • Pola jalur tidak peka huruf besar/kecil. Misalnya, /FOO dan /foo diperlakukan sebagai duplikat dan tidak diizinkan dalam Pola untuk mencocokkan pengaturan.

Tabel berikut ini mencantumkan aturan perutean dengan kombinasi host frontend dan jalurnya:

Aturan perutean Host frontend Jalur
A www.contoso.com /
B www.contoso.com /*
C www.contoso.com /ab
D www.contoso.com /abc
E www.contoso.com /abc/
F www.contoso.com /abc/*
G www.contoso.com /abc/def
H www.contoso.com /path/

Tabel berikut ini memperlihatkan aturan perutean mana yang cocok dengan permintaan masuk di tepi Azure Front Door:

Permintaan Masuk Rute yang Cocok
www.contoso.com/ A
www.contoso.com/a B
www.contoso.com/ab C
www.contoso.com/abc D
www.contoso.com/abzzz B
www.contoso.com/abc/ E
www.contoso.com/abc/d F
www.contoso.com/abc/def G
www.contoso.com/abc/defzzz F
www.contoso.com/abc/def/ghi F
www.contoso.com/path B
www.contoso.com/path/ H
www.contoso.com/path/zzz B

Peringatan

Jika tidak ada aturan perutean untuk host frontend yang sama persis tanpa jalur rute catch-all (/*), tidak ada aturan perutean yang akan dicocokkan.

Konfigurasi contoh:

Rute Host Jalur
A profile.contoso.com /api/*

Tabel yang cocok:

Permintaan masuk Rute yang Cocok
profile.domain.com/other Tidak ada. Kesalahan 404: Permintaan Buruk

Keputusan perutean

Setelah Azure Front Door cocok dengan aturan perutean, Azure Front Door memutuskan cara memproses permintaan. Jika respons yang di-cache tersedia, respons akan dilayani kembali ke klien.

Jika seperangkat aturan dikonfigurasi untuk aturan perutean yang cocok, aturan tersebut akan diproses secara berurutan. Seperangkat aturan dapat mengambil alih rute dengan mengarahkan lalu lintas ke grup asal tertentu. Jika tidak ada seperangkat aturan yang ditentukan, permintaan diteruskan ke grup asal tanpa perubahan.

Jika Azure Front Door (klasik) tidak memiliki respons cache, Azure Front Door (klasik) akan memeriksa konfigurasi penulisan ulang URL. Jika tidak ada jalur penerusan kustom yang ditentukan, permintaan diteruskan ke backend yang sesuai di kumpulan backend yang dikonfigurasi. Jika jalur penerusan kustom ditentukan, jalur permintaan diperbarui sesuai lalu diteruskan ke backend.

Langkah berikutnya