Cách Chặn Truy Cập Theo Quốc Gia Bằng File .htaccess
Trong quá trình vận hành website, không phải mọi lượt truy cập đều mang lại giá trị. Nhiều quản trị viên thường xuyên gặp tình trạng spam, bot tự động hoặc các cuộc tấn công xuất phát từ một số quốc gia nhất định. Điều này không chỉ làm hao tốn tài nguyên máy chủ mà còn ảnh hưởng đến tốc độ và mức độ an toàn của website.
Một trong những giải pháp đơn giản nhưng hiệu quả là chặn truy cập theo quốc gia. Nếu website của bạn đang sử dụng máy chủ Apache, bạn có thể thực hiện việc này trực tiếp thông qua file cấu hình .htaccess mà không cần cài thêm phần mềm phức tạp.
Trong bài viết này, chúng ta sẽ cùng tìm hiểu cách thiết lập .htaccess để giới hạn hoặc chặn truy cập từ các quốc gia không mong muốn, giúp website hoạt động ổn định và an toàn hơn.
Hướng Dẫn Chặn Truy Cập Quốc Gia
Bước 1: Mở file .htaccess
Đăng nhập vào hosting
Vào thư mục gốc website tìm đến file .htaccess (nếu chưa có tạo mới)

Bước 2: Chặn quốc gia bằng GeoIP
Ví dụ: Chặn truy cập từ Trung Quốc và Nga
vNode Tutorial
GeoIPEnable On
RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(CN|RU)$
RewriteRule ^ - [F,L]
Trong đó:
CN: Trung Quốc
RU: Nga
F: Trả về lỗi 403 Forbidden
L: Dừng xử lý rule

Bước 3: Chặn nhiều quốc gia cùng lúc
Ví dụ: Trung Quốc, Nga, Ấn Độ, Indonesia
Bạn chỉ cần thêm mã quốc gia vào giữa các dấu |.
vNode Tutorial
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(CN|RU|IN|ID)$
RewriteRule ^ - [F,L]
Bước 4: Chỉ cho phép Việt Nam truy cập
Nếu website chỉ phục vụ người dùng Việt Nam:
vNode TutorialGeoIPEnable On
RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^VN$
RewriteRule ^ - [F,L]
Nghĩa là: IP không phải từ Việt Nam sẽ bị chặn toàn bộ
Khi nào nên dùng cách này?
- Website chỉ phục vụ người dùng trong 1–2 quốc gia
- Bị bot tấn công từ quốc gia cụ thể
- Muốn giảm tải server, giảm spam
