Hướng dẫn chỉnh file robot.txt

Tùy chỉnh file Robots.txt nâng cao

Nếu bạn chỉ cần tạo một file robots.txt đơn giản, thì đây là tất cả, nếu bạn muốn hiểu chuyên sâu về cách làm việc và cách tối ưu file robots.txt thì hãy tham khảo tiếp những hướng dẫn dưới đây.

Robots.txt có chặn hoàn toàn việc các công cụ tìm kiếm lập chỉ mục.

Robots.txt không phải là một cách dễ dàng để kiểm soát các trang công cụ tìm kiếm lập chỉ mục. Nếu mục tiêu chính của bạn là ngăn các trang nhất định không được đưa vào kết quả của công cụ tìm kiếm, cách tiếp cận phù hợp là sử dụng thẻ meta noindex hoặc một phương pháp trực tiếp tương tự khác.

Điều này là do Robots.txt của bạn không trực tiếp yêu cầu các công cụ tìm kiếm không lập chỉ mục nội dung – nó chỉ bảo họ không thu thập dữ liệu. Mặc dù Google sẽ không thu thập dữ liệu các khu vực được đánh dấu từ bên trong trang web của bạn, nhưng chính Google tuyên bố  rằng nếu một trang web bên ngoài liên kết đến một trang mà bạn loại trừ với tệp Robots.txt của bạn, Google vẫn có thể lập chỉ mục trang đó.

John Mueller, Nhà phân tích quản trị trang web của Google, cũng đã xác nhận rằng nếu một trang có các liên kết được trỏ đến nó, ngay cả khi nó bị chặn bởi tệp robots.txt, vẫn có thể được lập chỉ mục .

Trong tệp Robots.txt của bạn có gì?

Được rồi, bây giờ bạn có tệp robot.txt vật lý trên máy chủ của mình mà bạn có thể chỉnh sửa khi cần. Nhưng bạn thực sự làm gì với tập tin đó? Chà, như bạn đã học trong phần đầu tiên, robot.txt cho phép bạn kiểm soát cách robot tương tác với trang web của bạn. Bạn làm điều đó với hai lệnh cốt lõi:

  • User-agent – điều này cho phép bạn nhắm mục tiêu các bot cụ thể. User-agent là những gì bot sử dụng để nhận dạng chính họ. Với User-agent, ví dụ, bạn có thể tạo quy tắc áp dụng cho Bing, nhưng không áp dụng cho Google.
  • Disallow  – điều này cho phép bạn nói với robot không truy cập vào các khu vực nhất định trên trang web của bạn.

Ngoài ra còn có một lệnh Allow mà bạn sẽ sử dụng trong các tình huống thích hợp. Theo mặc định, mọi thứ trên trang web của bạn được đánh dấu bằng Allow , do đó không cần thiết phải sử dụng lệnh Allow trong 99% tình huống. Nhưng nó có ích khi bạn muốn Disallow truy cập vào một thư mục và các thư mục con của nó nhưng Allow truy cập vào một thư mục con cụ thể.

Trước tiên, bạn thêm quy tắc bằng cách chỉ định User-agent nào nên áp dụng quy tắc và sau đó liệt kê các quy tắc sẽ áp dụng bằng Disallow và Allow. Ngoài ra còn có một số lệnh khác như Crawl-delay và Sitemap sẽ có những tác động sau:

  • Bị bỏ qua bởi hầu hết các trình thu thập thông tin chính hoặc được diễn giải theo nhiều cách khác nhau (trong trường hợp trì hoãn thu thập thông tin)
  • Được tạo dự phòng bằng các công cụ như Google Search Console (cho sơ đồ trang web)

Tùy chỉnh Robots.txt theo từng trường hợp.

Chúng ta hãy đi qua một số trường hợp sử dụng cụ thể để cho bạn thấy làm thế nào tất cả kết hợp với nhau.

Cách sử dụng Robots.txt để chặn truy cập vào trang web toàn bộ của bạn

Giả sử bạn muốn chặn tất cả quyền truy cập trình thu thập thông tin vào trang web của mình. Điều này dường thường áp dụng cho một trang web mới phát triển, bạn sẽ không muốn Google hay Bing index những nội dung tạm thời của bạn đâu, vì sau khi bạn cập nhật nội dung mới bạn sẽ nhận được hàng tá các yêu cầu xử lý lỗi 404… Để làm điều đó, bạn sẽ thêm mã này vào tệp robots.txt của WordPress:

User-agent: *
Disallow: /

Điều gì đang xảy ra trong mã đó?

Dấu sao (*) bên cạnh User-agent là ký tự đại diện, có nghĩa là nó áp dụng cho mọi User-agent. Dấu gạch chéo bên cạnh Disallow nói rằng bạn không cho phép truy cập vào tất cả các trang có chứa “tenmiencuaban.com/” (đó là trang duy nhất trên trang web của bạn).

Cách sử dụng Robots.txt để chặn một Bot truy cập trang web của bạn

Trong ví dụ này, tôi sẽ giả vờ rằng bạn không thích việc Bing thu thập dữ liệu các trang của bạn. Bạn đang cố gắng để Google index càng nhiều càng tốt và thậm chí không muốn Bing nhìn vào trang web của bạn. Để chỉ chặn Bing thu thập dữ liệu trang web của bạn, bạn sẽ thay dấu sao (*) bằng Bingbot:

User-agent: Bingbot
Disallow: /

Về cơ bản, đoạn mã trên nói rằng chỉ áp dụng quy tắc Disallow cho các bot với User-agent là Bing Bingbot . Bây giờ, bạn không muốn chặn truy cập vào Bing – nhưng kịch bản này sẽ có ích nếu có một bot cụ thể mà bạn không muốn truy cập trang web của mình. 

Cách sử dụng Robots.txt để chặn truy cập vào một thư mục hoặc tệp cụ thể

Trong ví dụ này, giả sử rằng bạn chỉ muốn chặn quyền truy cập vào một tệp hoặc thư mục cụ thể (và tất cả các thư mục con của thư mục đó). Để áp dụng điều này cho WordPress, giả sử bạn muốn chặn:

  • Toàn bộ thư mục wp-admin
  • wp-login.php

Bạn có thể sử dụng các lệnh sau:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php

Cách sử dụng Robots.txt để cho phép truy cập vào một tệp cụ thể trong thư mục không được phép

Bây giờ hãy nói rằng bạn muốn chặn toàn bộ thư mục, nhưng bạn vẫn muốn cho phép truy cập vào một tệp cụ thể trong thư mục đó. Đây là nơi lệnh Disallow có ích, và nó thực sự rất phù hợp với WordPress. Trên thực tế, tệp robot.txt ảo của WordPress minh họa hoàn hảo ví dụ này:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

Đoạn này chặn truy cập vào toàn bộ / wp-admin / thư mục trừ các /wp-admin/admin-ajax.php tập tin.

Cách sử dụng Robots.txt để ngăn chặn Bots thu thập dữ liệu kết quả tìm kiếm WordPress

Một tinh chỉnh dành riêng cho WordPress mà bạn có thể muốn thực hiện là ngăn các trình thu thập tìm kiếm thu thập dữ liệu các trang kết quả tìm kiếm của bạn. Theo mặc định, WordPress sử dụng tham số truy vấn tên? S =. Vì vậy, để chặn truy cập, tất cả những gì bạn cần làm là thêm quy tắc sau:

User-agent: *
Disallow: /?s=
Disallow: /search/

Cách tạo các quy tắc khác nhau cho các Bots khác nhau trong Robots.txt

Cho đến bây giờ, tất cả các ví dụ đã xử lý một quy tắc tại một thời điểm. Nhưng nếu bạn muốn áp dụng các quy tắc khác nhau cho các bot khác nhau thì sao? Bạn chỉ cần thêm từng bộ quy tắc theo khai báo Tác nhân người dùng cho mỗi bot. Ví dụ: nếu bạn muốn tạo một quy tắc áp dụng cho tất cả các bot và quy tắc khác áp dụng cho chỉ Bingbot , bạn có thể thực hiện như sau:

User-agent: *
Disallow: /wp-admin/
User-agent: Bingbot
Disallow: /

Trong ví dụ này, tất cả các bot sẽ bị chặn truy cập / wp-admin /, nhưng Bingbot sẽ bị chặn truy cập toàn bộ trang web của bạn.