Thiết Kế Web Giá Rẻ
Kiến thức làm web

File robots.txt là gì, dùng để làm gì cho website

Nguyen Hien·· 12 phút đọc

Có một lỗi mà mười năm làm nghề mình chứng kiến không biết bao nhiêu lần: web đang lên Google đẹp đẽ, tự nhiên một ngày rớt sạch, khách hoảng loạn gọi điện, mở ra soi thì thủ phạm chỉ là một dòng nhỏ xíu trong một tệp văn bản ít người để ý. Đó là lý do mình muốn nói cho rõ robots.txt là gì ngay từ đầu, vì hiểu sai hoặc sửa ẩu cái tệp này có thể làm cả website biến mất khỏi kết quả tìm kiếm trong tích tắc.

Bài này mình viết cho người không chuyên kỹ thuật nhưng muốn hiểu web của mình đang hoạt động ra sao. Đọc xong, bạn sẽ biết tệp này dùng để làm gì, đọc được vài dòng cú pháp cơ bản, tránh được cái lỗi chết người mình vừa kể, và phân biệt được nó với một thứ hay bị nhầm lẫn là thẻ meta noindex.

Nói cho dễ hiểu, tệp này là gì

robots.txt là một tệp văn bản nhỏ đặt ở thư mục gốc của website, kiểu như địa chỉ web của bạn nối thêm đuôi /robots.txt. Bạn cứ thử gõ tên web bất kỳ rồi thêm đuôi đó vào, phần lớn web đều cho bạn xem được nội dung của nó. Bên trong chỉ là mấy dòng chữ, không có gì bí ẩn.

Công dụng của nó là ra lệnh cho các con bot (robot — chương trình tự động của công cụ tìm kiếm đi dạo khắp web để đọc nội dung). Mỗi khi bot của Google ghé thăm web bạn, việc đầu tiên nó làm là đọc tệp này để xem chủ nhà cho phép vào những khu nào, cấm vào những khu nào. Giống như tấm bảng treo ở cổng một toà nhà: "khu này mời vào", "khu kho không phận sự miễn vào".

Mình hay ví với khách thế này. Web của bạn là một ngôi nhà nhiều phòng, bot Google là người đưa thư cần mẫn muốn xem qua từng phòng để ghi vào sổ. robots.txt chính là lời nhắn bạn dán ở cửa: phòng khách thì mời vào xem thoải mái, còn phòng riêng, nhà kho, phòng giặt thì xin đừng ghé. Người đưa thư tử tế sẽ tôn trọng lời nhắn đó.

Có một điểm cực kỳ quan trọng phải nhớ ngay: tệp này chỉ là lời đề nghị, không phải khoá cửa. Các bot đàng hoàng như Google hay Bing thì tuân theo, nhưng bot xấu, công cụ thu thập dữ liệu bậy bạ thì hoàn toàn có thể phớt lờ. Cho nên đừng bao giờ dùng robots.txt để giấu thông tin nhạy cảm, vì nó không hề chặn ai truy cập thẳng vào đường dẫn cả, chỉ là lời nhắn nhẹ nhàng cho bot ngoan thôi.

Vậy tệp này dùng để làm gì

Câu hỏi hợp lý tiếp theo: web đã có rồi, sao phải bận tâm tới cái tệp này? Mình kể vài việc thật mà nó giúp ích.

Thứ nhất, nó giúp bot Google không tốn công đọc những trang vô nghĩa. Một web thường có cả đống đường dẫn chẳng cần lên Google làm gì: trang quản trị nội bộ, trang giỏ hàng, trang kết quả lọc sản phẩm sinh ra hàng trăm biến thể trùng lặp. Bạn chặn bot ghé mấy chỗ đó để nó dành sức đọc kỹ những trang thật sự quan trọng như trang sản phẩm, bài viết, dịch vụ.

Thứ hai, nó là nơi bạn chỉ đường cho Google tìm thấy sitemap (sơ đồ trang — tệp liệt kê toàn bộ địa chỉ các trang trên web). Khai báo sitemap ngay trong robots.txt giúp bot biết web bạn có những trang nào mà mò cho nhanh. Nếu bạn chưa rõ phần này, mình có viết riêng một bài giải thích kỹ sitemap là gì, đọc nối hai bài sẽ thấy chúng ăn khớp với nhau.

Thứ ba, với web lớn, nó giúp tiết kiệm cái gọi là ngân sách thu thập. Google không đọc web bạn vô tận đâu, mỗi lần ghé nó chỉ đọc một lượng trang nhất định. Chặn bớt những chỗ rác giúp nó tập trung vào chỗ đáng giá. Web nhỏ vài chục trang thì chuyện này không gay gắt, nhưng web bán hàng nghìn sản phẩm thì rất đáng quan tâm.

Đọc cú pháp cơ bản, chỉ bốn dòng cần nhớ

Đây là phần nghe có vẻ kỹ thuật nhưng thật ra dễ bất ngờ. Toàn bộ tệp này xoay quanh bốn từ khoá. Mình giải thích từng cái bằng tiếng người.

  • User-agent (tác nhân — tên của con bot mà dòng lệnh nhắm tới): khai bạn đang nói chuyện với bot nào. Dấu hoa thị * nghĩa là "nói với tất cả các bot". Muốn nhắn riêng bot Google thì ghi tên nó.
  • Disallow (không cho phép): chỉ ra khu vực bạn cấm bot ghé. Ví dụ Disallow: /admin/ là cấm bot vào khu quản trị.
  • Allow (cho phép): ngược lại, mở cửa một khu cụ thể, thường dùng để mở một ngách nhỏ nằm bên trong khu đang bị cấm.
  • Sitemap: dòng khai địa chỉ sitemap của web để Google biết đường tìm.

Một tệp thật cho một web bình thường trông gọn gàng thế này:

Dòng lệnh Ý nghĩa bằng tiếng người
User-agent: * Lời nhắn này gửi cho tất cả các bot
Disallow: /admin/ Cấm bot vào khu quản trị nội bộ
Disallow: /gio-hang/ Cấm bot ghé trang giỏ hàng
Allow: / Phần còn lại của web cho phép vào thoải mái
Sitemap: https://tenweb.com/sitemap.xml Sitemap của web nằm ở đây, mời đọc

Nhìn bảng trên là bạn đọc được phần lớn các tệp robots.txt ngoài đời rồi. Cái cần cảnh giác nhất nằm ở dòng Disallow, mình nói riêng ở phần sau vì nó là chỗ gây hoạ.

Cái lỗi chết người: vô tình chặn cả website

Đây là phần mình muốn bạn đọc kỹ nhất cả bài. Có một dòng lệnh tưởng vô hại mà sức tàn phá khủng khiếp:

User-agent: *
Disallow: /

Để ý dấu gạch chéo / đứng một mình sau Disallow. Nó không chặn một thư mục nào cụ thể, mà chặn toàn bộ web — nghĩa là bạn vừa treo bảng "cấm vào tất cả các phòng" trước mặt Google. Hậu quả là dần dần mọi trang rớt khỏi kết quả tìm kiếm, web coi như tàng hình.

Lỗi này xảy ra nhiều hơn bạn nghĩ. Lý do phổ biến nhất: lúc đang xây web, người làm cố tình chặn hết để Google đừng đọc bản nháp dở dang, nhưng đến khi web chạy thật lại quên gỡ dòng đó ra. Mình gặp không dưới chục ca như vậy, web đẹp long lanh mà mãi không lên Google, mở robots.txt ra thấy đúng dòng Disallow: / còn nằm chình ình từ hồi build.

Nói thẳng một câu để bạn nhớ đời: trước khi đưa web lên chạy thật, BẮT BUỘC kiểm tra lại robots.txt xem có dòng Disallow: / sót lại không. Một dấu gạch chéo đặt sai chỗ có thể xoá sổ công sức cả tháng làm nội dung. Đây là thứ mình luôn soi lại lần cuối trước khi bàn giao web cho khách.

Còn vài lỗi nhỏ hơn nhưng cũng hay gặp: chặn nhầm thư mục chứa ảnh khiến hình không lên Google Hình ảnh; chặn nhầm thư mục chứa tệp giao diện khiến Google không hiểu được web trông thế nào; hoặc đặt tệp sai chỗ, không nằm ở thư mục gốc nên Google chẳng thấy đâu. Mình gom mấy điểm cần soi lại thành một danh sách cho dễ nhớ.

Kiểm tra robots.txt cần lưu ý gì — robots.txt là gì
Những điểm phải soi lại trong robots.txt trước khi đưa web lên chạy thật.

robots.txt khác thẻ meta noindex thế nào

Đây là chỗ gây nhầm lẫn nhiều nhất, và hiểu sai nó dẫn tới hành động sai. Hai thứ này nghe na ná "chặn Google" nhưng làm hai việc hoàn toàn khác nhau.

robots.txt chặn ở khâu thu thập — tức là ngăn bot ghé đọc nội dung trang ngay từ đầu. Còn thẻ meta noindex (một dòng mã gắn trong từng trang ra lệnh "đừng đưa trang này vào kho hiển thị") chặn ở khâu lập chỉ mục — bot vẫn được vào đọc, nhưng đọc xong thì không đưa trang lên kết quả tìm kiếm.

Nghe thì giống nhau, nhưng có một bẫy oái oăm thế này. Nếu bạn muốn một trang không lên Google, nhiều người theo phản xạ đi chặn nó bằng robots.txt. Sai. Vì khi bạn chặn bot đọc trang đó, bot sẽ không bao giờ nhìn thấy thẻ noindex bên trong — và trớ trêu là trang vẫn có thể hiện trên Google dưới dạng một liên kết trống không có mô tả, nếu Google biết tới nó qua đường khác. Muốn một trang biến mất hẳn khỏi kết quả tìm kiếm, bạn phải dùng thẻ noindex và để cho bot vào đọc được, chứ không phải chặn nó ở robots.txt.

robots.txt khác meta noindex ở chỗ nào — robots.txt là gì
robots.txt chặn bot vào đọc; meta noindex cho đọc nhưng không cho lên Google.

Tóm gọn cho bạn dễ chốt: muốn bot đừng tốn công đọc một khu nào đó thì dùng robots.txt. Muốn một trang đừng xuất hiện trên Google thì dùng meta noindex và đừng chặn trang đó ở robots.txt. Hai việc, hai công cụ, đừng lẫn lộn.

Các bước tự kiểm tra và tạo file robots.txt

Phần này mình hướng dẫn để bạn tự kiểm tra web mình, hoặc làm theo nếu muốn tự tay đụng vào. Nói trước, với khách bên mình thì tệp này được dựng chuẩn sẵn lúc bàn giao, bạn không phải lo. Nhưng biết để tự soi vẫn hơn.

Các bước tạo file robots.txt — robots.txt là gì
Bốn bước kiểm tra và tạo file robots.txt cho website của bạn.

Ở bước cuối, công cụ tiện nhất để kiểm tra là Google Search Console — chính Google cho bạn xem nó hiểu tệp robots.txt của bạn ra sao và trang nào đang bị chặn. Nếu bạn chưa biết công cụ này, mình có bài riêng về Google Search Console là gì chỉ cách khai báo và dùng cho người mới. Đây là thứ mình mở ra mỗi lần khách than "web không lên Google", vì lỗi chặn nhầm hiện ra ngay tại đó.

Một lời khuyên thật lòng: nếu bạn không rành kỹ thuật, đừng tự nghịch tệp này trên web đang chạy thật. Sửa sai một dòng là rủi ro rớt cả web, mà hậu quả lại không hiện ra ngay nên đến lúc phát hiện thì đã muộn vài tuần. Phần này nên để đơn vị làm web lo, đó đúng là việc của họ.

Nếu bạn đang định làm một web mới và muốn nó được dựng chuẩn ngay từ đầu — robots.txt đặt đúng, sitemap khai sẵn, khai báo Search Console gọn gàng mà không phải tự mò — có thể xem các gói thiết kế web trọn gói bên mình. Gói Cơ bản 1.990.000đ, gói Pro 3.990.000đ, gói VIP từ 7.990.000đ; mọi gói đều tặng tên miền, hosting và chứng chỉ SSL (chứng chỉ bảo mật — giúp web hiện ổ khoá an toàn) năm đầu, bàn giao trong khoảng 3 đến 7 ngày. Phần kỹ thuật khó nhằn này mình làm trọn cho bạn.

Bạn cũng có thể tìm hiểu thêm cách bên mình làm web giá rẻ mà vẫn chuẩn để lên Google cho hình dung, hoặc nếu nghi web mình đang dính lỗi chặn nhầm, cứ nhắn cho bên mình qua trang liên hệ hay gọi Zalo 0777 716 863. Mình mở robots.txt soi giúp và chỉ cho bạn chỗ sai, miễn phí, không ràng buộc gì.

Nói cho cùng, robots.txt là một tệp nhỏ mà sức ảnh hưởng lớn. Hiểu đúng thì nó là người gác cổng giúp Google đọc web bạn cho gọn gàng. Hiểu sai một dấu gạch chéo thì nó thành cái khoá vô tình nhốt cả web khỏi Google. Chỉ cần nhớ kiểm tra nó trước khi web lên chạy thật, bạn đã tránh được một trong những lỗi tốn kém nhất mà người làm web hay mắc.

Cần một website giá rẻ, chuẩn SEO?

Nhận tư vấn và báo giá miễn phí ngay hôm nay.

Bài viết liên quan