全部产品
Search
文档中心

Function Compute:Konfigurasi kebijakan penulisan ulang (Pratinjau publik)

更新时间:Nov 11, 2025

Kebijakan penulisan ulang memungkinkan Anda memodifikasi Uniform Resource Identifier (URI) permintaan. Anda dapat mengonfigurasi kebijakan penulisan ulang untuk memodifikasi URI permintaan yang dikirim ke fungsi Anda melalui nama domain kustom. Topik ini menjelaskan pola penulisan ulang dan cara mengonfigurasi kebijakan penulisan ulang untuk nama domain kustom di Konsol Function Compute.

Informasi latar belakang

Di Function Compute, kebijakan penulisan ulang hanya dapat memodifikasi path dan query dari URI. Anda tidak dapat memodifikasi scheme, host, port, atau fragment.

Di Function Compute, Anda dapat mengonfigurasi kebijakan penulisan ulang untuk nama domain kustom guna menulis ulang URI permintaan ke suatu fungsi.

Pola Penulisan Ulang

Nama domain kustom mendukung penulisan ulang tingkat rute. Function Compute menyediakan tiga pola penulisan ulang: penulisan ulang eksak, penulisan ulang wildcard, dan penulisan ulang ekspresi reguler.

Penulisan Ulang Eksak

Dalam penulisan ulang eksak, jika path permintaan secara persis cocok dengan aturan pencocokan, maka path tersebut akan diganti dengan string dalam aturan penggantian. Misalnya, jika aturan pencocokan adalah /old dan aturan penggantian adalah /new, permintaan untuk /old akan ditulis ulang menjadi /new. Tabel berikut memberikan contoh tambahan.

Aturan pencocokan

Aturan Penggantian

URI Asli

URI yang Ditulis Ulang

/old

/new

/old

/new

/test/old

Tidak Cocok

/serviceName.Qualifier

/serviceA

/serviceName.Qualifier

/serviceA

Penulisan Ulang Wildcard

Pola penulisan ulang wildcard merupakan metode pencocokan sederhana yang sesuai untuk sebagian besar skenario.

Penulisan ulang wildcard menggunakan tanda bintang (*) untuk mencocokkan string apa pun. Anda dapat mereferensikan string yang cocok dalam aturan penggantian berdasarkan urutan kemunculan tanda bintang tersebut. Misalnya, jika aturan pencocokan adalah /api/* dan aturan penggantian adalah /$1, permintaan untuk /api/getFunctionName akan ditulis ulang menjadi /getFunctionName. Tabel berikut memberikan contoh tambahan.

Catatan

Dalam pola penulisan ulang wildcard, karakter tanda bintang (*) dan tanda sisipan (^) memiliki makna khusus. Karakter lain diperlakukan sebagai string literal.

  • *: mencocokkan string apa pun.

  • ^: mencocokkan awal string.

Aturan pencocokan

Aturan Penggantian

URI Asli

URI yang Ditulis Ulang

/old

/new

/old

/new

/test/old

/new

^/old

/new

/old

/new

/test/old

Tidak Cocok

/api/*

/$1

/api/getFunctionName

/getFunctionName

/api/getFunctionName&Version=1

/getFunctionName&Version=1

/css/*

/public/static/css/$1

/css/style.css

/public/static/css/style.css

/ServiceName/*/FunctionName/*/Qualifier/*

/$1.$3/$2

/ServiceName/svc-a/FunctionName/func-a/Qualifier/1

/svc-a.1/func-a

/f..c

/helloworld

/f..c

/helloworld

/func

Tidak Cocok

Penulisan Ulang Regex

Dalam pola penulisan ulang ekspresi reguler, aturan pencocokan dan aturan penggantian mengikuti sintaks ekspresi reguler standar. Untuk informasi lebih lanjut tentang sintaks tersebut, lihat Sintaks ekspresi reguler. Tabel berikut memberikan contoh pencocokan penulisan ulang ekspresi reguler.

Catatan

Penulisan ulang ekspresi reguler merupakan fitur lanjutan dengan sintaks kompleks untuk skenario khusus. Untuk sebagian besar kasus, gunakan pola penulisan ulang wildcard.

Aturan pencocokan

Aturan Penggantian

URI Asli

URI yang Ditulis Ulang

^/old/[a-z]+/

/new

/old/ab/

/new

/test/a-b/

Tidak Cocok

^/api/.+?/(.*)

/api/v2/$1

/api/v1/test

/api/v2/test

/api/v1-pre/test

/api/v2/test

Urutan dan Prioritas Pencocokan

Prioritas pola-pola tersebut, dari tertinggi ke terendah, adalah: Penulisan ulang eksak → Penulisan ulang wildcard → Penulisan ulang ekspresi reguler.

Function Compute memungkinkan Anda mengonfigurasi beberapa kebijakan penulisan ulang untuk satu aturan routing. Oleh karena itu, sebuah permintaan mungkin cocok dengan beberapa kebijakan penulisan ulang. Jika sebuah permintaan cocok dengan beberapa kebijakan dari pola penulisan ulang yang sama, Function Compute mencocokkan permintaan tersebut terhadap kebijakan-kebijakan tersebut sesuai urutan konfigurasinya. Kebijakan pertama yang cocok dengan permintaan akan digunakan untuk penggantian, dan kebijakan lainnya tidak akan dicocokkan lagi.

Sebagai contoh, pertimbangkan kebijakan penulisan ulang wildcard berikut.

var rule1 = &WildcardRules{
    Match:       "/api/v1/*",
    Replacement: "/api/v2/$1",
}

var rule2 = &WildcardRules{
    Match:       "/api/*/*",
    Replacement: "/api/v3/$2",
}
  • Jika kebijakan penulisan ulang dikonfigurasi dalam urutan [rule1, rule2], permintaan untuk /api/v1/getFunctionName akan ditulis ulang menjadi /api/v2/getFunctionName.

  • Jika kebijakan penulisan ulang dikonfigurasi dalam urutan [rule2, rule1], permintaan untuk /api/v1/getFunctionName akan ditulis ulang menjadi /api/v3/getFunctionName.

Prasyarat

Buat fungsi

Prosedur

Anda dapat mengonfigurasi kebijakan penulisan ulang saat membuat nama domain kustom atau untuk nama domain kustom yang sudah ada.

Konfigurasi kebijakan penulisan ulang saat membuat nama domain kustom

  1. Masuk ke Konsol Function Compute. Di panel navigasi sebelah kiri, pilih Function Management > Domain Management.

  2. Di bilah menu atas, pilih Wilayah. Pada halaman Domain Management, klik Add Custom Domain Name.

  3. Pada halaman Add Custom Domain Name, masukkan Domain Name. Di bagian Routing Configuration, klik Configure di bawah Rewrite Policy.

  4. Di panel Configure Rewrite Policy, klik +Add Rewrite Policy, konfigurasi kebijakan tersebut, lalu klik OK.

    edit-rewriterule

Konfigurasi kebijakan penulisan ulang untuk nama domain kustom yang sudah ada

  1. Masuk ke Konsol Function Compute. Di panel navigasi sebelah kiri, pilih Function Management > Domain Management.

  2. Di bilah menu atas, pilih Wilayah. Di daftar nama domain, temukan nama domain target dan klik Edit di kolom Actions.

  3. Pada halaman edit nama domain kustom, di bagian Routing Configuration, klik Configure di bawah Rewrite Policy.

  4. Di panel Configure Rewrite Policy, klik +Add Rewrite Policy, konfigurasi kebijakan tersebut, lalu klik OK.