hn4u @ Last updated 21/11/04 22:42
Go to my homepage at http://4u.jcisio.com
Full version available at http://4u.jcisio.com/r/article1441.htm

Hải Nam

Tạo địa chỉ web đẹp với modRewrite

Các chỉ thị của modRewrite có thể đặt trong httpd.conf (phần cấu hình server, virtual host hoặc directory đều được) hoặc đặt trong .htaccess đều được.

Đổi phần mở rộng

Thay vì dùng index.php vì bạn có thể gọi bằng index.4u mà không cần đổi tên index.php thành index.4u

Dưới đây là đoạn mã minh hoạ

CODE
RewriteEngine on
RewriteRule ^(.*)\.4u /$1.php [QSA]

QSA (Query String Appended) ý nói là phần sau dấu ? vẫn được thêm vào và giữ nguyên.

Không cần query string

Giả dụ bạn muốn /index.php?act=view&cid=8&id=123 tự động thay bằng /view/8/123/ chẳng hạn (theo thí dụ của bạn), thì ta dùng .htaccess như sau:

CODE
RewriteEngine on
RewriteRule ^view/([0-9]+)/([0-9]+)/$ /index.php?act=view&cid=$1&id=$2

Giải thích sơ qua: dòng đầu tiên bật RewriteEngine, dòng thứ 2 có dạng RewriteRule tìm thay-thế, chuỗi tìm của ta là ^view/([0-9]+)/([0-9]+)/$ với dấu ^  cho biết là vị trí đầu tiên, $ là vị trí cuối, ([0-9]+) là một chuỗi chỉ gồm các kí tự 0 đến 9 (hay nói cách khác, là 1 con số). Trong phần thay-thế cũng không có gì đặc biệt, ngoại trừ $1 và $2 là các giá trị tìm thấy ứng với 2 cặp ngoặc ([0-9]+) trong chuỗi tìm.

Tương tự, bạn có thể thêm các RewriteRule khác theo ý thích.


hainam4u @ Last updated 21/11/04 22:42
Go to my homepage at http://4u.jcisio.com