全部产品
Search
文档中心

Microservices Engine:Konfigurasikan kebijakan penulisan ulang

更新时间:Jun 28, 2025

Anda dapat mengonfigurasi kebijakan penulisan ulang untuk memodifikasi jalur dan nama host dalam permintaan sebelum diteruskan ke layanan backend tujuan. Hal ini memenuhi kebutuhan lingkungan bisnis dan arsitektur tertentu. Kebijakan penulisan ulang memberikan kontrol yang presisi atas jalur dan nama host dalam permintaan, serta memastikan bahwa permintaan diarahkan dengan tepat ke layanan atau Titik akhir yang sesuai.

Kebijakan penulisan ulang

Kebijakan penulisan ulang memungkinkan Anda mengubah jalur dan nama host dalam permintaan.

Penulisan ulang jalur

Gateway berbasis cloud-native memungkinkan Anda menulis ulang jalur dalam permintaan menggunakan salah satu dari metode berikut: penulisan ulang eksak, penulisan ulang awalan, dan penulisan ulang regex.

Penulisan ulang eksak

Mengubah sepenuhnya jalur dalam permintaan.

Contoh 1

Jika jalur dalam permintaan adalah /app/test dan Anda ingin jalur ditulis ulang sebagai /foo/bar, konfigurasikan kebijakan penulisan ulang berikut:

  • Kondisi pencocokan rute: Atur tipe pencocokan rute ke Pencocokan Eksak, dan atur jalur ke /app/test.

  • Kebijakan penulisan ulang: Atur metode penulisan ulang ke Penulisan Ulang Eksak, dan atur jalur ke /foo/bar.

Penting

Untuk menggunakan metode penulisan ulang eksak, tipe pencocokan rute harus Pencocokan Eksak atau Pencocokan Regex. Tipe pencocokan rute tidak boleh Pencocokan Awalan.

Penulisan ulang awalan

Mengubah awalan jalur dalam permintaan.

Contoh 1

Jika jalur dalam permintaan adalah /app/test dan Anda ingin jalur ditulis ulang sebagai /test, konfigurasikan kebijakan penulisan ulang berikut:

  • Kondisi pencocokan rute: Atur tipe pencocokan rute ke Pencocokan Awalan, dan atur jalur ke /app/.

  • Kebijakan penulisan ulang: Atur metode penulisan ulang ke Penulisan Ulang Awalan, dan atur jalur ke /.

Catatan

Tanda garis miring (/) di akhir /app/ tidak boleh dihilangkan. Hanya awalan yang cocok yang diubah jika metode penulisan ulang awalan digunakan. Jika Anda mengatur jalur dalam kondisi pencocokan ke /app, jalur akan ditulis ulang menjadi //test, yang merupakan jalur tidak valid.

Contoh 2

Jika jalur dalam permintaan adalah /v1/test dan Anda ingin jalur ditulis ulang sebagai /v2/test, konfigurasikan kebijakan penulisan ulang berikut:

  • Kondisi pencocokan rute: Atur tipe pencocokan rute ke Pencocokan Awalan, dan atur jalur ke /v1.

  • Kebijakan penulisan ulang: Atur tipe penulisan ulang ke Penulisan Ulang Awalan, dan atur jalur ke /v2.

Penting

Untuk menggunakan metode penulisan ulang awalan, tipe pencocokan rute harus Pencocokan Awalan. Tipe pencocokan rute tidak boleh Pencocokan Eksak atau Pencocokan Regex. Jika tipe pencocokan rute diatur ke Pencocokan Awalan, semua permintaan dengan jalur yang mengandung awalan yang ditentukan akan cocok dan ditulis ulang. Sebelum mengatur tipe penulisan ulang ke Penulisan Ulang Awalan, pastikan bahwa semua permintaan perlu ditulis ulang. Jika tidak, disarankan untuk menggunakan Penulisan Ulang Eksak.

Penulisan ulang regex

Mengubah sebagian jalur dalam permintaan. Konfigurasi penulisan ulang regex terdiri dari parameter Mode dan Penggantian. Nilai parameter Mode digunakan untuk mencocokkan bagian tertentu yang ingin diubah dalam jalur asli. Nilai parameter Penggantian digunakan untuk mengganti bagian yang cocok. Untuk informasi tentang sintaks ekspresi reguler, lihat Sintaks Ekspresi Reguler RE2.

Contoh 1

Jika jalur dalam permintaan adalah /aaa/one/bbb/one/ccc dan Anda ingin jalur ditulis ulang sebagai /aaa/two/bbb/two/ccc, konfigurasikan kebijakan penulisan ulang berikut:

  • Kondisi pencocokan rute: Atur tipe pencocokan rute ke Pencocokan Eksak, dan atur jalur ke /aaa/one/bbb/one/ccc.

  • Kebijakan penulisan ulang: Atur tipe penulisan ulang ke Penulisan Ulang Regex, atur parameter Mode ke one, dan atur parameter Penggantian ke two.

Contoh 2

Jika jalur dalam permintaan adalah /httpbin/(.*)/(.*) dan Anda ingin menghapus awalan /httpbin dari jalur serta menukar posisi dua bagian regex, konfigurasikan kebijakan penulisan ulang berikut:

  • Kondisi pencocokan rute: Atur tipe pencocokan rute ke Pencocokan Regex, dan atur jalur ke /httpbin/(.*)/(.*).

  • Kebijakan penulisan ulang: Atur tipe penulisan ulang ke Penulisan Ulang Regex, atur parameter Mode ke /httpbin/(.*)/(.*), dan atur parameter Penggantian ke /\2/\1. \1 menentukan string pertama yang cocok menggunakan ekspresi reguler yang ditentukan. \2 menentukan string kedua yang cocok menggunakan ekspresi reguler yang ditentukan. String \1 dan \2 sesuai dengan $1 dan $2 dalam NGINX Ingress.

Catatan

Metode penulisan ulang regex lebih kompleks daripada metode penulisan ulang awalan dan penulisan ulang eksak. Disarankan untuk menggunakan metode penulisan ulang eksak.

Penulisan ulang host

Gateway berbasis cloud-native memungkinkan Anda mengubah nama host dalam permintaan menggunakan metode penulisan ulang eksak.

Sebagai contoh, jika nama host dalam permintaan adalah test.com, dan Anda ingin nama host ditulis ulang sebagai dev.com, atur Destination Host dalam kebijakan penulisan ulang ke dev.com.

Konfigurasikan kebijakan penulisan ulang

  1. Masuk ke Konsol MSE. Di bilah navigasi atas, pilih wilayah.

  2. Di panel navigasi sisi kiri, pilih Cloud-native Gateway > Gateways. Di halaman Gateways, klik ID gateway.

  3. Di panel navigasi sisi kiri, klik Routes. Lalu, klik tab Routes.

  4. Temukan aturan routing yang ingin dimodifikasi dan klik Policies di kolom Actions.

  5. Di tab Policies, klik Rewrite di panel navigasi sisi kiri. Di halaman yang muncul, konfigurasikan parameter dan klik Save.

    Catatan
    • Jika Tipe dalam parameter Jalur Asli adalah Pencocokan Eksak atau Pencocokan Regex, Anda dapat mengatur Tipe dalam parameter Jalur Tujuan ke Penulisan Ulang Eksak.

    • Jika Tipe dalam parameter Jalur Asli adalah Pencocokan Awalan, Anda dapat mengatur Tipe dalam parameter Jalur Tujuan ke Penulisan Ulang Awalan atau Penulisan Ulang Regex.

    • Jika Tipe dalam parameter Jalur Asli adalah Pencocokan Regex, Anda dapat mengatur Tipe dalam parameter Jalur Tujuan ke Penulisan Ulang Eksak atau Penulisan Ulang Regex.

  6. Setelah kebijakan penulisan ulang dikonfigurasi, aktifkan sakelar Enable. Dalam pesan Enable, klik OK.

    • Jika Anda mengaktifkan kebijakan penulisan ulang, jalur dan nama host dalam permintaan diubah berdasarkan kebijakan penulisan ulang ketika gateway meneruskan permintaan ke layanan backend tujuan.

    • Jika Anda tidak mengaktifkan kebijakan penulisan ulang, jalur dan nama host dalam permintaan tidak diubah.

Verifikasi hasilnya

Dalam contoh ini, awalan /app1 digunakan untuk mengidentifikasi permintaan eksternal, tetapi jalur dengan awalan ini tidak dapat diproses oleh layanan backend. Anda dapat menggunakan kebijakan prefix rewrite untuk menulis ulang /app1/ sebagai / agar memastikan permintaan dapat diteruskan.

  • Contoh URL dengan jalur asli:

    curl -I http://121.196.XX.XX/demo/item/list
  • Contoh URL setelah penulisan ulang jalur: (Jalur tujuan setelah penulisan ulang masih /demo/item/list.)

    curl -I http://121.196.XX.XX/app1/demo/item/list