[PHP] Rewrite URL - Hướng dẫn viết đường dẫn thân thiện cho Website trong PHP
Để cho Website của chúng ta trở nên thân thiện, đẹp mắt, dễ nhớ và đặc biệt tốt cho SEO thì kỹ thuật Rewrite Url là rất quan trọng trong lập trình Web. Chính vì vậy, hôm nay vncoder.net sẽ hướng dẫn các bạn cách Rewrite Url cho Website trong PHP
Để cho Website của chúng ta trở nên thân thiện, đẹp mắt, dễ nhớ và đặc biệt tốt cho SEO thì kỹ thuật Rewrite Url là rất quan trọng và cần thiết trong lập trình Web. Chính vì vậy, hôm nay vncoder.vn sẽ hướng dẫn các bạn cách Rewrite Url cho Website trong PHP.
Để có thể Rewrite Url, trước tiên chúng ta mở file .htaccess lên vào copy đoạn code sau:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Trong đó:
- Dòng đầu tiên sử dụng để bật RewriteEngine.
- Hai dòng tiếp theo là điều kiện để sử dụng Rewrite.
- Chúng ta có thể chỉ dùng dòng đầu tiên và dòng cuối cùng trong 5 dòng mã trên. Tuy nhiên nếu chỉ có 2 dòng này, những đường dẫn tới thư mục và files thực sẽ ko sử dụng được. Đó là lý do chúng ta thêm vào 2 dòng số 2 và 3. Hai dòng này sẽ đặt điều kiện để server kiểm tra xem đường dẫn mà user sử dụng là có thật hay ko, trước khi xử lý nó như 1 đường dẫn ảo.
- -d và -s là 2 giá trị mẫu dành cho việc kiểm tra THƯ MỤC và FILE thực. Ta sử dụng thêm [OR] để kết hợp 2 điều kiện này lại.
- Dòng cuối cùng phụ thuộc vào quyết định của bạn, đường dẫn ảo sẽ được đặt ra sao.
Chú ý: Trong Windows, bạn không thể tạo được file chỉ với phần đuôi mở rộng, vậy nên đặt tên là htaccess.txt rồi upload FTP lên server và đổi tên lại thành .htaccess. Hoặc bạn có thể xem tiếp hướng dẫn dưới đây.
Hướng dẫn cách tạo file .htaccess trên Windows
Khi mới bắt đầu làm website, lập trình website, thiết kế website thì chúng ta không quan tâm tới cái gọi là file .htaccess này. Nhưng khi làm việc chuyên nghiệp hơn, tùy biến website cao cấp hơn thì mới bắt đầu quan tâm. Đây là trường hợp nhiều bạn gặp phải, không biết phải làm gì để tạo ra file htacces. Dưới đây là 2 cách mà vncoder.vn sẽ hướng dẫn các bạn tạo file .htaccess.
Cách 1:
Vào hệ điều hành linux, tạo 1 file .htaccess, sau đó copy trở lại vào windows. Bạn cũng có thể sử dụng 1 tài khoản hosting linux tạo và download về.
Lưu ý, khi download về nó cũng sẽ mất cái dấu chấm. Do vậy, trước khi download về thì bạn nên nén file .htaccess lại rồi hãy down về. Down về rồi thì xả nén thôi.
Cách 2:
Cách này nhanh hơn nhiều, đây là cách đi không chính thống
Sử dụng sublime text, gõ vào đoạn code sau:
<?php
fopen(".htaccess", "w");
?>
Lưu lại với tên index.php, chạy file và bạn đã có 1 file .htaccess.
Cú pháp Rewrite Url
Cú pháp sử dụng RewriteRule như sau:
RewriteRule [duong_dan_ao] [duong_dan_that]
Ví du 1:
RewriteRule ^topic_([0-9]*).html index.php?topic=$1
Ví dụ 2:
RewriteRule ^article/([0-9]*)/page/([0-9]*) index.php?article=$1&page=$2
Cú pháp để viết các Rule này giống như cách viết của biểu thức chính quy Regular Expression. Ví dụ như sau:
- (.*) nhận tất cả các giá trị.
- ([0-9]*) chỉ nhận các giá trị là số, từ 0-9.
- ([a-zA-Z]*) chỉ nhận các giá trị là chữ cái, từ a-z và A-Z.
Kết luận
Vậy là vncoder.vn đã hướng dẫn xong cách Rewrite Url cho Website. Hãy để lại bình luận phía dưới nếu các bạn có câu hỏi cần giải đáp. Chúc các bạn thành công!.
Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!