close

Hướng dẫn cách chặn bot truy cập website A-Z [2026]

Tác giả: Đông Tùng Ngày đăng: 31/03/2026 Chuyên mục: WordPress nâng cao
Disclosure
Website Tino blog được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Wiki.tino.org có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Tino blog sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại Tino blog được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

Khi vận hành một website, quản trị viên phải đối mặt với hàng ngàn lượt truy cập tự động từ các trình thu thập dữ liệu mỗi ngày. Bên cạnh các bot hữu ích cho hoạt động SEO, một lượng lớn bot độc hại hoặc bot rác liên tục quét thông tin sẽ làm cạn kiệt tài nguyên máy chủ và làm giảm tốc độ tải trang đáng kể. Bài viết dưới đây hướng dẫn bạn từng bước cách chặn bot truy cập website trên NGINX và Apache chi tiết.

Cấu hình chặn bot trên máy chủ NGINX

NGINX là một máy chủ web hiệu năng cao, cung cấp khả năng xử lý truy cập rác cực kỳ tối ưu thông qua mã phản hồi 444. Khi cấu hình mã này, máy chủ sẽ ngắt kết nối mạng ngay lập tức đối với các truy cập bất hợp lệ, giúp tiết kiệm tối đa băng thông.

Các bước thực hiện:

Bước 1: Sử dụng phần mềm SSH như Xshell để kết nối vào máy chủ web. Xem hướng dẫn: Hướng dẫn sử dụng phần mềm Xshell kết nối SSH tới VPS

Sau đó, mở tệp Virtual Host của tên miền bằng lệnh sau:

vi /etc/nginx/sites-available/yourdomain.com

Bước 2: Tìm đến khối cấu hình server { … } và dán đoạn mã dưới đây vào trước các quy tắc định tuyến khác:

if ($http_user_agent ~ (Bytespider|Amazonbot|DotBot|my-tiny-bot|python-requests|curl/7.68.0|curl/7.54.1|ClaudeBot|Go-http-client/2.0|ZoominfoBot|SemrushBot/7~bl|ByteLocale|YandexBot/3.0) ) {

return 444;

}

Giải thích mã:

  • $http_user_agent: Biến kiểm tra định danh trình duyệt của khách truy cập.
  • ~: Ký hiệu yêu cầu so khớp theo biểu thức chính quy.
  • (Bytespider|Amazonbot|DotBot): Tập hợp tên các bot rác cần chặn, ngăn cách với nhau bằng dấu |.
  • return 444: Lệnh yêu cầu máy chủ ngắt kết nối mạng ngay lập tức khi phát hiện bot mà không cần trả về thông báo lỗi, giúp tiết kiệm tối đa băng thông.

File sau khi được thêm mã sẽ trông như sau:

server {

listen 80;

server_name yourdomain.com www.yourdomain.com;

root /var/www/yourdomain.com;

if ($http_user_agent ~ (Bytespider|Amazonbot|DotBot|my-tiny-bot|python requests|curl/7.68.0|curl/7.54.1|ClaudeBot|Go-http-client/2.0|ZoominfoBot|SemrushBot/7~bl|ByteLocale|YandexBot/3.0) ) {

return 444;

}

location / {

try_files $uri $uri/ /index.php?$args;

}

...

}

Bước 3: Chạy lệnh sau để đảm bảo mã vừa nhập không bị sai cú pháp:

nginx -t

Nếu màn hình hiển thị dòng chữ “syntax is ok”, tiếp tục chạy lệnh dưới đây để tải lại cấu hình hệ thống:

systemctl reload nginx

Lưu ý quan trọng:

  • Luôn sao lưu tệp cấu hình gốc để có thể khôi phục ngay nếu xảy ra lỗi.
  • Để chặn thêm bot mới, bạn chỉ cần thêm tên bot vào sau dấu gạch đứng |. Ví dụ: |GPTBot/1.2.
  • Các bảng điều khiển (Control Panel) hoặc kịch bản tự động (Script) thường lưu tệp Virtual Hosts ở các đường dẫn khác nhau. Bạn cần xác định đúng vị trí tệp cấu hình của tên miền để mã có tác dụng.

Hướng dẫn chặn bot bằng tệp .htaccess

Nếu bạn sử dụng hosting hoặc các máy chủ chạy Apache/LiteSpeed, chặng bot qua tệp .htaccess là cách đơn giản và hiệu quả nhất.

Các bước thực hiện:

Bước 1: Sử dụng File Manager trong trình quản lý hosting (cPanel, DirectAdmin) hoặc kết nối FTP để tìm tệp .htaccess nằm trong thư mục gốc của website (thường là public_html).

Nếu sử dụng hosting tại Tino, bạn có thể xem: Hướng dẫn cách đăng nhập vào tài khoản cPanel tại Tino.

Chặn bot bằng tệp .htaccess
Chặn bot bằng tệp .htaccess

Chặn bot bằng tệp .htaccess
Chặn bot bằng tệp .htaccess

Bước 2: Dán đoạn mã sau vào ngay đầu tệp:

RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} "Bytespider|Amazonbot/0.1|MJ12bot/v1.4.8|MJ12bot/v1.4.4|SemrushBot/6~bl|SemrushBot/7~bl" [NC]

RewriteRule .* - [F,L]

Giải thích mã:

  • RewriteCond %{HTTP_USER_AGENT}: Kiểm tra định danh bot.
  • [NC]: Không phân biệt chữ hoa hay chữ thường.
  • [F,L]: Trả về lỗi 403 (Forbidden) và dừng xử lý các quy tắc phía sau.
Chặn bot bằng tệp .htaccess
Chặn bot bằng tệp .htaccess

Bước 3: Nhấn Lưu thay đổi và tệp sẽ có hiệu lực ngay lập tức mà không cần khởi động lại máy chủ.

Lưu ý: Bạn cũng có thể thêm bot để chặn vào danh sách bằng cách sử dụng dấu |

Cách kiểm tra bot đã bị chặn hay chưa

Bạn có thể dùng công cụ curl trên máy tính (thông qua Command Prompt hoặc Terminal) để giả lập mình là một con bot với mã lệnh sau:

curl -A "SemrushBot" http://yourdomain.com

Giải thích mã:

  • -I: Chỉ lấy thông tin tiêu đề phản hồi từ máy chủ (không tải toàn bộ trang).
  • -A “SemrushBot”: Giả lập trình duyệt của bạn là bot có tên SemrushBot (đây là một trong những tên bot bạn đã liệt kê trong file).
  • https://yourdomain.com: Thay bằng địa chỉ website của bạn

Kết quả:

Nếu thấy phản hồi trống (NGINX 444) hoặc lỗi 403 (.htaccess) nghĩa bạn đã chặn bot thành công!

Kết luận

Chủ động loại bỏ các luồng dữ liệu tự động không mong muốn là một giải pháp thiết thực để duy trì sự ổn định và tốc độ tối đa cho website. Quản trị viên nên thường xuyên theo dõi nhật ký truy cập để nhận diện thêm các định danh bot độc hại mới, từ đó bổ sung kịp thời vào danh sách bộ lọc của NGINX hoặc tệp .htaccess nhằm tối ưu hóa liên tục hệ thống máy chủ.

Đông Tùng

Senior Technology Writer

Là cử nhân Quản trị kinh doanh của Trường Đại học Tài chính - Marketing, Tùng bắt đầu làm việc tại Tino Group từ năm 2021 ở vị trí Content Marketing để thỏa mãn niềm đam mê viết lách của bản thân. Sở hữu khả năng sáng tạo đặc biệt, anh cùng đội ngũ của mình đã tạo nên những chiến dịch quảng cáo độc đáo cùng vô số bài viết hữu ích về nhiều chủ đề khác nhau. Sự tỉ mỉ, kiên trì và tinh thần sáng tạo của Tùng đã góp phần lớn vào thành công của Tino Group trong lĩnh vực marketing trực tuyến.

Xem thêm bài viết

Bài viết liên quan