# Bắt đầu file .htaccess

## 1. Rewrite URL
# Bật engine rewrite
RewriteEngine On

# Định nghĩa quy tắc rewrite
# Chuyển đổi path/index.php?mod=news&id=1 thành path/news/1.html
# Quy tắc này giả định rằng 'news' là giá trị cố định cho tham số 'mod' và '1' là giá trị cho tham số 'id'.
# Nếu bạn muốn tổng quát hơn cho nhiều module, bạn cần cung cấp thêm thông tin về cấu trúc URL mong muốn.
# Dưới đây là quy tắc tổng quát:
# Chuyển đổi: path/MOD_NAME/ID.html -> path/index.php?mod=MOD_NAME&id=ID
RewriteRule ^([a-zA-Z0-9_-]+)/([0-9]+)\.html$ index.php?mod=$1&id=$2 [L,QSA]

---

## 2. Chặn các máy có địa chỉ IP bắt đầu: 234.45
# Sử dụng module mod_authz_core (cho Apache 2.4+) hoặc mod_authz_host (cho Apache 2.2)


    Require all granted
    # Chặn tất cả IP bắt đầu 234.45
    Require not ip 234.45


# Nếu bạn dùng Apache cũ hơn (ví dụ 2.2), dùng đoạn này:
# 
#     Order allow,deny
#     Allow from all
#     Deny from 234.45
# 

---

## 3. Chặn Hotlink (Ngăn các website khác nhúng hình ảnh)
# Thay your-domain.com bằng tên miền thực tế của bạn
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?your-domain\.com [NC]
RewriteRule \.(jpe?g|png|gif|bmp)$ - [F]

---

## 4. Thay đổi trang chủ mặc định (DirectoryIndex)
# Đặt myindex.php là file mặc định khi truy cập thư mục gốc
DirectoryIndex myindex.php index.php

---

## 5. Cấm duyệt cây thư mục (Disable Directory Listing)
# Ngăn người dùng xem danh sách file khi truy cập một thư mục không có file index
Options -Indexes

---

## 6. Đặt mật khẩu bảo vệ thư mục
# Đây là phần cấu hình cho việc bảo vệ thư mục. 
# Bạn cần tạo thêm một file .htpasswd chứa tên người dùng và mật khẩu đã mã hóa.
# Đặt đoạn code này vào file .htaccess, hoặc tốt nhất là vào một file .htaccess riêng trong thư mục cần bảo vệ.

# AuthType Basic
# AuthName "Restricted Access"
# AuthUserFile /path/to/.htpasswd  # Thay bằng đường dẫn tuyệt đối đến file .htpasswd của bạn
# Require valid-user

# Kết thúc file .htaccess