Hiển thị các bài đăng có nhãn Htaccess Rule. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Htaccess Rule. Hiển thị tất cả bài đăng

Thứ Hai, 14 tháng 9, 2026

So Sánh Quy Tắc RewriteRule Htaccess


Hai dòng này khác nhau ở các Cờ điều hướng (Rewrite Flags) nằm trong dấu ngoặc vuông [...] ở cuối câu lệnh.

Ý nghĩa của các Cờ (Flags)

  • QSA (Query String Append): Cho phép giữ lại và nối tiếp các tham số trên URL (như ?tab=chat) vào URL đích sau khi rewrite.

  • L (Last): Dừng xử lý. Nếu quy tắc này khớp, Apache sẽ không chạy các quy tắc rewrite bên dưới nó nữa.

  • NC (No Case): Không phân biệt chữ hoa, chữ thường khi so khớp URL (ví dụ: tab-noidung, TAB-NOIDUNG, Tab-Noidung đều được chấp nhận).

Phân tích chi tiết từng dòng

Cấu trúcÝ nghĩa xử lý
Dòng 1: [QSA,L]

Nếu người dùng vào /tab-noidung/?tab=chat


→ Apache chuyển tới: modules.php?name=Your_Account&op=user_lienhe_chat&tab=chat


(Tham số ?tab=chat được giữ nguyên và truyền sang PHP)

Dòng 2: [L,NC]

Nếu người dùng vào /tab-noidung/?tab=chat


→ Apache chuyển tới: modules.php?name=Your_Account&op=user_lienhe_chat


(Tham số ?tab=chat bị xóa bỏ, PHP sẽ không nhận được $_GET['tab'])

Sự khác biệt chính & Kết luận

  1. Khả năng nhận tham số URL (?tab=chat):

    • Dòng 1 [QSA,L]: NÊN DÙNG. Giúp PHP lấy được giá trị $_GET['tab'] khi người dùng refresh hoặc truy cập trực tiếp bằng đường dẫn.

    • Dòng 2 [L,NC]: Làm mất tham số đằng sau dấu ?, khiến $_GET['tab'] trong PHP luôn bị rỗng/về mặc định.

  2. Xử lý chữ hoa / chữ thường:

    • Dòng 1: Chỉ nhận URL gõ chính xác chữ thường /tab-noidung/.

    • Dòng 2: Nhận cả /Tab-NoiDung/ nhờ cờ NC.