Toán tử trong htaccess
Bạn không cần phải học thuộc các toán tử này, chỉ để dành tham khảo khi cần thôi.
Mã:
RewriteRule pattern target [Flag]
Các toán tử được viết tại pattern và target bên trên.
Ví dụ:
Mã:
RewriteRule "(.*\.(jpg|gif|png))$" "http://example.com$1" [P,NC]
Bên dưới đây là ý nghĩa của từng loại toán tử được htaccess dùng:
Toán tử | Mô tả cách dùng |
---|---|
+ | Match với một hoặc nhiều ký tự. |
* | Match với 0 hoặc nhiều ký tự. |
^ | Bắt đầu chuỗi regex. |
$ | Kết thúc chuỗi regex. |
? | cho phép chọn lựa ký tự. |
! | Phủ định, ngược lại giá trị đứng sau nó. |
. | Đại diện cho ký tự bất kỳ. |
| | Hoặc |
\ | Đứng trước ký tự đặc biệt, biến chúng thành ký tự thường. |
.* | Không có ký tự nào hoặc nhiều ký tự bất kỳ. |
^$ | Chuỗi rỗng. |
^.*$ | Match tất cả. |
$n | Tham khảo các kết quả được đánh số từ các điều kiện RewriteCond. |
() | Nhóm các rule. |
[a-z] | Match các ký tự thường từ a tới z. |
[A-Z] | Match các ký tự hoa từ A tới Z. |
[a-zA-Z] | Match các ký tự thường và hoa từ a tới z. |
[0-9] | Match các ký tự số từ 0 tới 9. |
[a-zA-Z0-9] | Match các ký tự thường, hoa từ a tới z và số từ 0 tới 9. |
a{n} | Match bắt đầu từ ký tự đầu, sau đó lấy tiếp n ký tự tiếp theo. |
a{n,} | Match bắt đầu từ ký tự đầu, sau đó lấy tiếp nhiều hơn n ký tự tiếp theo. |
a{n,m} | Match bắt đầu từ ký tự đầu, sau đó lấy tiếp nhiều hơn n cho tới m ký tự tiếp theo. |
[a-z]{n,m} | Match ký tự từ a tới z dài từ n tới m. |
[a-zA-Z]{n,m} | Match ký tự thường và hoa từ a tới z dài từ n tới m. |
[0-9]{n} | Match ký tự số dài n ký tự. |
[0-9]{n,m} | Match ký tự số dài n đến m ký tự. |
Một số ký tự điều kiện:
Ký tự | Mô tả cách dùng |
---|---|
-d | Kiểm tra xem thư mục có tồn tại không. |
-f | Kiểm tra xem file có tồn tại không. |
-s | Kiểm tra xem file có khác 0 hay không. |