Bagaimanakah Saya Boleh Menulis Semula URL dengan Parameter GET Menggunakan .htaccess?

DDD
Lepaskan: 2024-11-16 13:35:02
asal
819 orang telah melayarinya

How Can I Rewrite URLs with GET Parameters Using .htaccess?

Menulis Semula Pembolehubah GET dengan .htaccess

Banyak aplikasi web menggunakan struktur URL yang merangkumi kandungan dinamik, seperti contoh yang diberikan: indeks. php?page=controller. Untuk meningkatkan pengalaman pengguna dan mengekalkan struktur URL yang lebih bersih, adalah wajar untuk menulis semula URL ini untuk dipaparkan dalam format yang lebih mesra pengguna. Ini boleh dicapai menggunakan peraturan .htaccess.

Peraturan .htaccess yang disediakan secara berkesan menulis semula URL dalam bentuk http://localhost/index.php?page=controller ke http://localhost/controller/. Walau bagaimanapun, keperluan adalah untuk turut menyokong parameter GET, menghasilkan URL seperti http://localhost/controller/param/value/param/value.

Untuk mencapai ini, RewriteRule berikut boleh ditambah pada Fail .htaccess:

RewriteRule ^(.*)$ index.php?params= [NC, QSA]
Salin selepas log masuk

Peraturan ini menangkap keseluruhan URL, termasuk sebarang parameter dan memperuntukkan data yang ditangkap kepada pembolehubah GET params. Akibatnya, URL http://localhost/controller/param/value/param/value akan ditulis semula ke index.php?params=param/value/param/value.

Dalam skrip PHP, params Pembolehubah GET boleh diletupkan untuk mengekstrak parameter individu dan nilainya. Contohnya:

<?php

$params = explode("/", $_GET['params']);
for($i = 0; $i < count($params); $i+=2) {

  echo $params[$i] ." has value: ". $params[$i+1] ."<br />";

}

?>
Salin selepas log masuk

Dengan pengubahsuaian ini, peraturan .htaccess akan berjaya menulis semula URL dengan parameter GET, membolehkan skrip PHP mengakses parameter ini untuk pemprosesan selanjutnya dan logik pengawal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menulis Semula URL dengan Parameter GET Menggunakan .htaccess?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan