全部产品
Search
文档中心

CDN:Rewrite origin path

更新时间:Jan 05, 2026

Alibaba Cloud CDN memungkinkan Anda menulis ulang jalur origin. Fitur penulisan ulang URL beroperasi pada points of presence (POPs) tanpa memengaruhi layanan internal Alibaba Cloud CDN atau kunci cache.

Cara kerja

POPs mencocokkan jalur origin dengan URL sumber daya yang diminta di origin server berdasarkan aturan penulisan ulang URL. Permintaan dengan parameter tertentu kemudian diarahkan ke origin server.

  • Dalam aturan penulisan ulang, jika parameter Flag diatur ke None atau Break, hanya jalur sumber daya dalam URL yang ditulis ulang.1

  • Jika parameter Flag diatur ke enhance break, baik jalur sumber daya maupun string kueri ditulis ulang.2

Catatan

  • Anda dapat mengonfigurasi hingga 50 aturan Origin Path Rewrite untuk setiap nama domain.

  • Sistem menerapkan aturan penulisan ulang pada tab Origin Path Rewrite secara berurutan dari atas ke bawah. Mengubah urutan aturan ini dapat menghasilkan hasil penulisan ulang yang berbeda.

  • Origin Path Rewrite dapat bertentangan dengan pengaturan fitur Ignore Parameters di Domain Names>Optimization. Pastikan kedua fitur tersebut tidak saling bertentangan.

Perbedaan antara penulisan ulang URL akses dan penulisan ulang jalur origin

Fitur

Dipengaruhi

Pengalaman klien

Kasus penggunaan

Rewrite access URLs

Memengaruhi URL yang diakses klien. Juga mengubah URL yang digunakan POP untuk pengambilan asal.

  • Jika flag diatur ke redirect, klien menggunakan URL yang diarahkan untuk mengirim permintaan baru.

  • Jika flag diatur ke break, URL yang dilihat klien tetap sama dengan URL yang diakses dan tidak berubah.

Umumnya digunakan untuk migrasi atau pemetaan URL dari nama domain lama ke nama domain baru, atau menyediakan URL berbeda untuk klien seluler dan PC.

Contoh: Saat klien mengakses old.example.com/hello, URL akses ditulis ulang menjadi new.example.com/hello.

Rewrite origin path

Memengaruhi URL yang digunakan POP untuk pengambilan asal. URL yang diakses klien tidak berubah.

URL yang dilihat klien tetap sama dengan URL yang diakses dan tidak berubah.

Umumnya digunakan untuk menyembunyikan struktur URL aktual origin server guna melindungi informasi origin server, atau menggunakan pemetaan URL agar POP CDN dapat mengambil konten dari direktori origin yang berbeda.

Contoh: Saat klien mengakses cdn.example.com/hello, jalur origin ditulis ulang menjadi origin.example.com/source/hello.

Penulisan ulang URL akses

image
  1. Klien mengirim permintaan ke POP. URL permintaan adalah old.example.com/hello.

  2. Setelah menerima permintaan, POP menulis ulang URL permintaan menjadi new.example.com/hello berdasarkan aturan penulisan ulang URL akses. POP kemudian menyertakan URL baru tersebut dalam header HTTP Location pada respons 302.

  3. Setelah menerima respons 302, klien mengirim permintaan baru ke URL tersebut.

  4. POP memeriksa cache-nya. Jika konten untuk URL yang ditulis ulang sudah di-cache, POP mengembalikan konten tersebut ke klien. Jika belum di-cache, POP mengirim permintaan ke origin server dengan URL yang telah ditulis ulang, yaitu new.example.com/hello.

  5. Origin server menerima permintaan dan mengembalikan respons ke POP.

  6. POP menyimpan respons tersebut dalam cache dan mengembalikannya ke klien.

Penulisan ulang jalur origin

image
  1. Klien mengirim permintaan ke POP. URL permintaan adalah cdn.example.com/files/hello.txt.

  2. Setelah menerima permintaan, POP memeriksa cache-nya. Jika konten untuk URL permintaan sudah di-cache, POP mengembalikan konten tersebut ke klien. Jika belum di-cache, POP menulis ulang jalur origin menjadi origin.example.com/secret/files/hello.txt berdasarkan aturan penulisan ulang jalur origin, lalu mengirim permintaan ke origin server.

  3. Origin server menerima permintaan dan mengembalikan respons ke POP.

  4. POP menyimpan respons tersebut dalam cache dan mengembalikannya ke klien.

Buat aturan penulisan ulang jalur origin

  1. Login ke CDN console.

  2. Di panel navigasi kiri, klik Domain Names.

  3. Pada halaman Domain Names, temukan nama domain target dan klik Manage di kolom Actions.

  4. Di pohon navigasi sebelah kiri halaman detail domain, klik Origin Fetch.

  5. Klik tab Origin Path Rewrite.

  6. Klik Add.

  7. Konfigurasikan parameter Path to Be Rewritten, Target Path, dan Flag. Tabel berikut menjelaskan parameter-parameter tersebut.

    改写回源URI

    Parameter

    Contoh

    Deskripsi

    Path to Be Rewritten

    ^/hello$

    Masukkan URL yang diawali garis miring (/). URL tidak boleh mengandung http:// atau nama domain. Anda harus menggunakan Perl Compatible Regular Expressions (PCRE).

    Target Path

    /hello/test

    Masukkan URL yang diawali garis miring (/). URL tidak boleh mengandung http:// atau nama domain. PCRE didukung.

    Flag

    None

    Jika Anda mengonfigurasi beberapa aturan penulisan ulang URL, Alibaba Cloud CDN mencocokkan permintaan terhadap aturan tersebut secara berurutan dari atas ke bawah.

    break

    • Jika Anda mengonfigurasi beberapa aturan penulisan ulang URL dan aturan saat ini cocok, aturan lain dilewati.

    • Opsi ini hanya menulis ulang jalur sumber daya dalam URL. Parameter URL tetap tidak berubah. Anda dapat menggunakan fitur penulisan ulang parameter untuk menulis ulang parameter URL.Origin Path Rewrite

    enhance break

    • Jika Anda mengonfigurasi beberapa aturan penulisan ulang URL dan aturan saat ini cocok, aturan lain dilewati.

    • Dibandingkan dengan break, enhance break juga menulis ulang parameter URL. Namun, pengaturan penulisan ulang parameter ini dapat bertentangan dengan pengaturan Rewrite origin fetch parameters. Jika Anda ingin mengaktifkan kedua fitur tersebut, pastikan pengaturannya tidak saling bertentangan.

  8. Klik OK untuk menerapkan aturan tersebut.

    Aturan penulisan ulang baru akan ditampilkan pada tab Origin Path Rewrite. Anda dapat mengklik Modify atau Delete di kolom Actions aturan penulisan ulang untuk mengubah atau menghapus aturan tersebut.

Contoh konfigurasi

  • Contoh 1: Terapkan aturan dengan flag diatur ke None.

    Path to Be Rewritten

    ^/hello$

    Target Path

    /index.html

    Flag

    None

    Hasil yang diharapkan

    Permintaan awal: http://example.com/hello

    Permintaan akhir: http://example.com/index.html

    Sistem melanjutkan pencocokan permintaan terhadap aturan penulisan ulang URL lain yang tercantum pada tab Origin Path Rewrite.

  • Contoh 2: Terapkan aturan dengan flag diatur ke Break.

    Path to Be Rewritten

    ^/hello.jpg$

    Target Path

    /image/hello.jpg

    Flag

    break

    Hasil yang diharapkan

    Permintaan awal: http://example.com/hello.jpg

    Permintaan akhir: http://example.com/image/hello.jpg

    Sistem menghentikan pencocokan permintaan terhadap aturan penulisan ulang URL lain yang tercantum pada tab Origin Path Rewrite.

  • Contoh 3: Terapkan aturan dengan flag diatur ke enhance break.

    Path to Be Rewritten

    ^/hello.jpg?code=123$

    Target Path

    /image/hello.jpg?code=321

    Flag

    enhance break

    Hasil yang diharapkan

    Permintaan awal: http://example.com/hello.jpg?code=123

    Permintaan akhir: http://example.com/image/hello.jpg?code=321

    Sistem menghentikan pencocokan permintaan terhadap aturan penulisan ulang URL lain yang tercantum pada tab Origin Path Rewrite.

  • Contoh 4: Tambahkan awalan URL ke direktori root jika nama file bersifat variabel

    Tambahkan jalur /image ke URL semua file di direktori root. Misalnya, tulis ulang /xxx dalam URL menjadi /image/xxx. Dalam contoh ini, xxx adalah nama file, seperti hello.jpg atau hello.html.

    Path to Be Rewritten

    ^(.*)$

    Catatan

    ^ mencocokkan string dari awal string. (.*) adalah grup, di mana . mencocokkan karakter apa pun kecuali line feed. * mencocokkan karakter atau grup sebelumnya nol kali atau lebih. Anda dapat menggunakan $1 di jalur target untuk mereferensikan konten variabel grup tersebut. $ mencocokkan string hingga akhir string. ^(.*)$ mencocokkan string dari awal hingga akhir, yang dapat berisi karakter apa pun kecuali line break, lalu menangkap konten yang cocok ke dalam satu grup. Misalnya, untuk string "hello world", ^(.*)$ mencocokkan seluruh string dan menangkap "hello world" ke dalam grup pertama.

    Target Path

    /image$1

    Catatan

    /image mencocokkan string "/image". $1 mereferensikan konten grup pertama, $2 mereferensikan konten grup kedua, dan seterusnya. /image$1 mencocokkan string "/image" diikuti konten grup pertama. Misalnya, jika konten grup pertama adalah "abc", /image$1 mencocokkan string "/imageabc". Perhatikan bahwa $1 mereferensikan konten grup, bukan literal "$1". Jika Anda ingin mencocokkan literal "$1", gunakan string escape "\$1".

    Flag

    break

    Hasil yang diharapkan

    • Permintaan awal: http://example.com/hello.jpg

      Permintaan akhir: http://example.com/image/hello.jpg

    • Permintaan awal: http://example.com/hello.html

      Permintaan akhir: http://example.com/image/hello.html

    Sistem menghentikan pencocokan permintaan terhadap aturan penulisan ulang URL lain yang tercantum pada tab origin path Rewrite.

  • Contoh 5: Tambahkan awalan URL ke direktori tertentu jika nama file bersifat variabel.

    Tambahkan jalur /image ke URL semua file di direktori /live. Misalnya, tulis ulang /live/xxx dalam URL menjadi /image/live/xxx. Dalam contoh ini, xxx adalah nama file, seperti hello.jpg atau hello.html.

    Path to Be Rewritten

    ^/live/(.*)$

    Target Path

    /image/live/$1

    Flag

    break

    Hasil yang diharapkan

    • Permintaan awal: http://example.com/live/hello.jpg

      Permintaan akhir: http://example.com/image/live/hello.jpg

    • Permintaan awal: http://example.com/live/hello.html

      Permintaan akhir: http://example.com/image/live/hello.html

    Sistem menghentikan pencocokan permintaan terhadap aturan penulisan ulang URL lain yang tercantum pada tab origin path Rewrite.

  • Contoh 6: Terapkan hanya aturan dengan flag diatur ke None ketika beberapa aturan dikonfigurasi.

    Buat dua aturan penulisan ulang URL, seperti yang ditunjukkan pada gambar berikut.配置

    Hasil yang diharapkan:

    • Permintaan awal: http://example.com/image_01.png

    • Permintaan akhir: http://example.com/image/image_02.png

      Catatan

      Permintaan cocok dengan aturan pertama dan jalur origin ditulis ulang menjadi http://example.com/image_02.png. Kemudian, permintaan cocok dengan aturan kedua dan jalur origin ditulis ulang menjadi http://example.com/image/image_02.png.

  • Contoh 7: Terapkan aturan dengan flag diatur ke Break ketika beberapa aturan dikonfigurasi.

    Buat dua aturan penulisan ulang URL, seperti yang ditunjukkan pada gambar berikut.配置

    Hasil yang diharapkan:

    • Permintaan awal: http://example.com/image_01.png

    • Permintaan akhir: http://example.com/image_02.png

      Catatan

      Permintaan cocok dengan aturan pertama dan URL permintaan ditulis ulang menjadi http://example.com/image_02.png. Aturan lain dilewati.