Hướng dẫn sử dụng 410 Redirect chuẩn SEO kèm ví dụ thực tế

410 là gì? 410 là mã trạng thái HTTP thông báo trang đã bị xóa vĩnh viễn, giúp Google nhanh chóng loại bỏ URL khỏi index. Khác với 404 (không xác định thời gian trở lại), 410 giúp tối ưu hóa trải nghiệm người dùng và hỗ trợ cho quy trình SEO như sau:

  • Giảm tỷ lệ thoát từ các liên kết hỏng.
  • Tập trung giá trị liên kết (link equity) vào trang còn hoạt động.
  • Tránh lỗi trùng lặp nội dung (duplicate content) do index trang không tồn tại.

Ngoài ra:

Theo các tài liệu hướng dẫn của Google, một website “hữu ích” phải đảm bảo:

  • Cấu trúc website rõ ràng, mạch lạc.
  • Nội dung tập trung vào người dùng, không chỉ công cụ tìm kiếm.
  • Quản lý index hiệu quả để tối ưu ngân sách thu thập dữ liệu (crawl budget).

1. Khi nào dùng 410 Redirect?

  • Trang đã bị xóa vĩnh viễn, không có kế hoạch khôi phục:
    • Sản phẩm ngừng kinh doanh.
    • Bài viết/blog lỗi thời, không còn giá trị.
    • Chiến dịch Marketing (SEO) đã kết thúc.
  • Muốn Google xóa nhanh URL khỏi kết quả tìm kiếm.
  • Không có trang thay thế phù hợp để chuyển hướng 301/302.

2. Cách triển khai 410 Redirect

2.1. Cấu hình trên máy chủ

Apache (.htaccess):

Redirect 410 /duong-dan-cu  
# Hoặc xóa cả thư mục:  
RedirectMatch 410 "^/thu-muc-cu/.*"  

NGINX:

location /duong-dan-cu {  
  return 410;  
}  

2.2. WordPress: Plugin Yoast SEO & RankMath

Yoast SEO (Bản Premium):

  1. Bật tính năng Redirects: Yoast SEO → Công cụ → Chuyển hướng.
  2. Thêm chuyển hướng 410:
    • URL cũ: Nhập đường dẫn (VD: /bai-viet-cu/).
    • Loại: Chọn 410 Gone.
      Lưu ý: Yoast miễn phí không hỗ trợ 410.

RankMath:

  1. Kích hoạt Redirections: Rank Math → Cài đặt Chung → Redirections → Bật.
  2. Thêm Redirect 410:
    • Source URL: Đường dẫn cần xóa (VD: /san-pham-cu/).
    • Redirect Type: Chọn 410 Gone.
    • Không điền Destination URL.

2.3. Áp dụng cho File .php

<?php 
header($_SERVER["SERVER_PROTOCOL"] . " 410 Gone"); 
get_header(); 
?> 

3. Lời khuyên tốt nhất từ Google

  • Audit internal links: Dùng công cụ như Ahrefs/Screaming Frog để tìm và xóa liên kết nội bộ trỏ đến trang 410.
  • Cập nhật sitemap: Loại bỏ URL 410 khỏi XML sitemap.
  • Kết hợp với nội dung Evergreen: Thay thế trang đã xóa bằng bài viết mới, sâu hơn (VD: Thay vì “thời trang 2010”, viết “xu hướng thời trang 2024”).
  • Kiểm tra log máy chủ: Đảm bảo Googlebot nhận mã 410 thay vì 404.

4. Ví dụ thực tế minh họa

Tình huống: Một trang thương mại điện tử xóa sản phẩm “giày thể thao 2020”.

  • Bước 1: Thêm Redirect 410 cho URL /giay-the-thao-2020.
  • Bước 2: Xóa Link đến sản phẩm từ menu, các bài viết liên quan (nếu có).
  • Bước 3: Tạo bài viết mới “Top 10 giày thể thao 2024” thay thế cho bài cũ và chuyển hướng 301 (nếu cần).

5. Lỗi thường gặp & cách khắc phục

  • Sai mã trạng thái: Dùng Google Search Console (GSC) kiểm tra Index Coverage.
  • Chuyển hướng 410 đến trang chủ: Lời khuyên là Không nên! Để trống Destination URL.
  • Quên xóa liên kết nội bộ: Điều này dẫn đến trải nghiệm người dùng kém.

6. Công cụ kiểm tra tình trạng Redirect

Bạn có thể sử dụng công cụ: https://www.redirect-checker.org

7. Tham khảo thêm tài liệu:

Việc áp dụng 410 Redirect đúng cách giúp tối ưu hóa cấu trúc website, tuân thủ nguyên tắc “Helpful Content” của Google. Kết hợp với nội dung Evergreen và chiến lược Semantic SEO, bạn sẽ xây dựng trang web bền vững, tập trung vào giá trị thực cho người dùng.

(Bài viết đã nhờ anh Toản check về kỹ thuật, mã code… nên có phương pháp nào bổ sung vui lòng comment để mình hoàn thiện thêm bài viết cho hoàn chỉnh)

:copyright: #NghienSEO (Team biên tập)

7 Lượt thích

Bài này được đấy

Bài viết chi tiết và rất đầy đủ ạ

Ở chỗ mục 4 ví dụ cho em hỏi là tại sao đã xóa rồi lại có bước 3 nữa ạ

1 Lượt thích

Chắc bạn ấy dùng từ chưa rõ nghĩa, đáng lẽ dùng từ Link sữ dễ hiểu hơn vì ý là có các link nội bộ, backlink thì xoá đi ấy em

1 Lượt thích

dạ ok anh

1 Lượt thích

Dạ đầu tiên em cảm ơn admin vì đã chia sẻ kiến thức bổ ích. Em có câu hỏi như sau ạ:

  • Đối với lỗi “sai mã trạng thái” mình kiểm tra trong Index Coverage nếu mà thấy URL vẫn xuất hiện ở mục “Lỗi 404” thì tức nghĩa URL đó chưa nhận trạng thái 410 và chưa được redirect về đúng trang tương ứng phải không ạ.
1 Lượt thích

Đúng, nếu URL vẫn xuất hiện ở mục “Lỗi 404” trong Index Coverage của Google Search Console, điều này có nghĩa:

  1. URL chưa trả về mã trạng thái 410 (Gone) để thông báo trang đã bị xóa vĩnh viễn.
  2. URL chưa được redirect (chuyển hướng) sang trang mới tương ứng (301/302).
    Google vẫn xem trang này là “không tìm thấy tạm thời” (404) thay vì “đã xóa vĩnh viễn” (410) hoặc đã chuyển hướng.
1 Lượt thích

Cho em hỏi thêm chỗ này " 1. URL chưa được redirect (chuyển hướng) sang trang mới tương ứng (301/302).
Google vẫn xem trang này là “không tìm thấy tạm thời” (404) thay vì “đã xóa vĩnh viễn” (410) hoặc đã chuyển hướng." là mặc dù mình đã thông báo 410 thì mình vẫn phải 301/302 URL đó đến trang tương ứng nếu có (còn không có thì không 301/302) đúng không ạ

1 Lượt thích

Đúng: Vẫn phải sử dụng 301/302 để chuyển hướng URL cũ sang trang tương ứng nếu có, ngay cả khi đã thông báo 410 .

2 Lượt thích