Thuật Ngữ SEO A-Z

Crawler

Chương trình tự động (bot) của công cụ tìm kiếm dùng để duyệt và thu thập thông tin từ các trang web.

4 lượt xem Cập nhật: 29/05/2026

Crawler là gì?

Crawler (còn gọi là spider hoặc bot) là chương trình tự động do công cụ tìm kiếm như Google, Bing hay Yahoo phát triển để duyệt web, đọc nội dung và thu thập dữ liệu từ các trang website. Nó hoạt động như một người dùng ảo: truy cập URL, tải HTML, phân tích liên kết, sau đó chuyển tiếp sang các trang khác theo cấu trúc liên kết nội bộ và ngoài trang.

Google sử dụng crawler tên là Googlebot, Bing dùng Bingbot, còn Yandex có Yandex Bot. Mỗi crawler tuân thủ tiêu chuẩn robots.txt và các thẻ meta điều khiển truy cập — ví dụ: noindex, nofollow.

Tại sao quan trọng trong SEO?

Crawler là bước đầu tiên và bắt buộc trong quy trình lập chỉ mục (indexing). Nếu crawler không thể truy cập trang, công cụ tìm kiếm sẽ không biết trang tồn tại — dẫn đến việc trang không xuất hiện trong kết quả tìm kiếm, dù nội dung có chất lượng cao đến đâu.

Vai trò chính gồm:

  • Phát hiện trang mới hoặc thay đổi (qua sitemap, liên kết nội bộ, backlink)
  • Đánh giá tốc độ tải, cấu trúc mã nguồn, tính khả dụng trên thiết bị di động
  • Ghi nhận tín hiệu về độ tin cậy (ví dụ: SSL, thời gian phản hồi, trạng thái HTTP)
  • Hỗ trợ xác định chủ đề và ngữ cảnh nội dung để xếp hạng phù hợp

Không có crawler, toàn bộ hệ sinh thái SEO — từ tối ưu on-page đến xây dựng backlink — đều mất tác dụng.

Cách hoạt động

Crawler bắt đầu từ danh sách URL gốc (seed URLs), thường là những trang đã được lập chỉ mục trước đó hoặc được khai báo trong sitemap.xml. Sau mỗi lần tải trang, nó:

  1. Kiểm tra robots.txt để xác định khu vực được phép truy cập
  2. Đọc thẻ meta robots và header HTTP để quyết định có lập chỉ mục hay không
  3. Trích xuất tất cả thẻ <a href="..."> để thêm vào hàng đợi duyệt
  4. Gửi dữ liệu HTML, CSS, JS cơ bản (tùy mức độ render) về máy chủ của công cụ tìm kiếm
  5. Cập nhật tần suất quét dựa trên lịch sử thay đổi nội dung, độ phổ biến và mức độ tin cậy của trang

Lưu ý: Crawler không “hiểu” nội dung như con người — nó chỉ thu thập và phân tích tín hiệu kỹ thuật. Việc render JavaScript đầy đủ (để thấy nội dung động) phụ thuộc vào khả năng xử lý của từng công cụ tìm kiếm. Google hỗ trợ render JS tốt hơn đa số đối thủ, nhưng vẫn có giới hạn — đặc biệt với nội dung tải chậm hoặc yêu cầu tương tác người dùng.

Hướng dẫn thực hiện

Để đảm bảo crawler hoạt động hiệu quả trên website của bạn, hãy làm theo các bước sau:

  1. Kiểm tra file robots.txt: Đảm bảo không chặn nhầm thư mục quan trọng (ví dụ: /wp-admin/ thì nên chặn, nhưng /category/ thì không).
  2. Đăng ký sitemap.xml trong Google Search Console và Bing Webmaster Tools. Sitemap nên chứa URL chính, cập nhật thường xuyên, giới hạn dưới 50.000 URL/tệp và không vượt quá 50MB (nén gzip).
  3. Tối ưu tốc độ tải: Crawler có giới hạn băng thông và thời gian chờ. Trang tải chậm hơn 3–4 giây dễ bị bỏ qua hoặc đánh giá thấp. Dùng PageSpeed Insights để kiểm tra.
  4. Xây dựng liên kết nội bộ rõ ràng: Mỗi trang nên có ít nhất một liên kết từ trang khác (tránh “trang mồ côi”). Dùng menu, breadcrumb, liên kết liên quan ở cuối bài.
  5. Loại bỏ redirect chuỗi dài: Giới hạn tối đa 1–2 redirect (301 hoặc 302). Chuỗi redirect > 5 bước khiến crawler bỏ qua.
  6. Theo dõi crawl stats: Trong Google Search Console → “Hiệu suất” → “Báo cáo crawl”, xem số trang được quét mỗi ngày, lỗi 4xx/5xx, và thời gian tải trung bình.

Lỗi thường gặp

Lỗi Dấu hiệu nhận biết Cách khắc phục
Blocked by robots.txt URL xuất hiện trong “Coverage report” với trạng thái “Excluded” và lý do “Blocked by robots.txt” Sửa file robots.txt, loại bỏ dòng Disallow: / hoặc đường dẫn cụ thể. Kiểm tra lại bằng công cụ “robots.txt Tester” trong Search Console.
Soft 404 Trang trả về mã 200 nhưng nội dung trống hoặc hiển thị “Không tìm thấy” Chuyển hướng 301 tới trang liên quan hoặc trả mã 404 thật + nội dung hữu ích cho người dùng.
Crawl budget bị lãng phí Nhiều URL trùng lặp (có tham số ?utm_source, ?page=1), trang category rỗng, hoặc nội dung mỏng chiếm phần lớn lượt quét Dùng rel="canonical", chặn tham số không cần thiết trong Search Console, loại bỏ hoặc noindex trang không mang giá trị.

Ví dụ thực tế

Một cửa hàng điện máy có 5.000 sản phẩm, nhưng chỉ 1.200 trang được lập chỉ mục. Khi kiểm tra trong Google Search Console, phát hiện 3.800 URL bị chặn bởi robots.txt do cấu hình sai: dòng Disallow: /*?* vô tình chặn toàn bộ URL có dấu chấm hỏi — bao gồm cả trang sản phẩm có biến thể màu/sizes. Sau khi sửa thành Disallow: /*?utm_ và thêm rel="canonical" cho các phiên bản, số trang được lập chỉ mục tăng lên 4.600 trong vòng 12 ngày. Lưu lượng tìm kiếm tự nhiên tăng 37% sau 6 tuần.

Lưu ý: Thời gian crawler phát hiện thay đổi phụ thuộc vào mức độ ưu tiên trang — trang chủ thường được quét mỗi vài giờ, trong khi trang blog ít tương tác có thể mất 3–7 ngày.

Câu hỏi thường gặp

Crawler có đọc nội dung trong iframe không?

Không trực tiếp. Nội dung trong iframe được coi là tài nguyên bên ngoài. Crawler chỉ thu thập iframe như một URL riêng — nếu iframe trỏ tới domain khác và không bị chặn, nó có thể quét riêng, nhưng không gán nội dung đó cho trang mẹ. Tốt nhất nên tránh dùng iframe cho nội dung quan trọng trong SEO.

Một trang bị chặn bởi robots.txt có xuất hiện trong kết quả tìm kiếm không?

Có thể — nếu có nhiều backlink mạnh trỏ tới trang đó, Google đôi khi vẫn hiển thị tiêu đề và mô tả (dựa trên anchor text hoặc dữ liệu từ các trang liên kết), dù không lập chỉ mục nội dung. Đây là trường hợp “URL-only indexing”. Tuy nhiên, khả năng xếp hạng gần như bằng 0.

Có cách nào yêu cầu crawler quét lại trang ngay lập tức không?

Google cung cấp nút “Yêu cầu lập chỉ mục” trong Search Console cho URL đã được quét trước đó — nhưng đây chỉ là yêu cầu, không đảm bảo quét ngay. Thời gian thực tế tùy trường hợp. Không có công cụ nào bắt buộc crawler quét tức thì — vì tần suất quét phụ thuộc vào crawl budget và độ ưu tiên của trang.