PN AGENCY

HTTP status, 404, 410 và soft 404: website nên trả gì theo từng tình huống?

Biên soạn: Nguyễn Minh Phương · 11 phút đọc · Cập nhật 24/8/2026

Trả lời nhanh

URL tồn tại trả 200; URL chuyển tới đích tương đương dùng redirect; URL không tồn tại trả 404/410; lỗi tạm thời dùng 5xx phù hợp. Giao diện lỗi trả 200 dễ thành soft 404.

Khung áp dụng

Ba câu hỏi giúp tránh quyết định vội

Phù hợp với website thường xuyên xóa sản phẩm, đổi URL, có route client-side, API hoặc trang kết quả rỗng.

STTCâu hỏi ra quyết địnhHành động hoặc bằng chứng cần có
1Tài nguyên còn tồn tại, đã chuyển hay đã xóa?Lập status decision tree.
2Có đích thay thế tương đương cho người dùng không?Test route ở server và client.
3Lỗi là vĩnh viễn, tạm thời hay do hệ thống?Loại redirect không tương đương.

Lỗi phổ biến nhất là giao diện báo không tìm thấy nhưng server vẫn trả 200

Google gọi trường hợp nội dung giống trang lỗi nhưng phản hồi thành công là soft 404. Điều này làm trạng thái tài nguyên không rõ và có thể khiến crawler lãng phí xử lý. Route không tồn tại nên trả 404; nội dung đã xóa vĩnh viễn có thể trả 404 hoặc 410 theo quyết định hệ thống; trang đang tồn tại phải có nội dung hữu ích tương ứng với URL.

  • Kiểm tra status thực, không chỉ nhìn giao diện.
  • Không render 'không có dữ liệu' với 200 cho URL vô nghĩa.
  • Giữ trang 404 hữu ích nhưng không biến nó thành status 200.

Redirect chỉ dùng khi có đích tương đương, server error dùng cho lỗi tạm thời

Khi tài nguyên chuyển sang URL tương đương, redirect vĩnh viễn giúp người dùng và crawler tới đích mới. Không nên redirect mọi trang đã xóa về homepage. Lỗi ứng dụng, database hoặc bảo trì cần status 5xx phù hợp thay vì 200 với nội dung thiếu; 503 có thể biểu thị tình trạng tạm thời và Retry-After khi triển khai đúng. Status là mô tả kỹ thuật, không phải công cụ thao túng index.

  • Không redirect URL không tương đương.
  • Không dùng 404 cho lỗi server toàn hệ thống.
  • Không giữ 5xx kéo dài mà thiếu owner xử lý.

Status policy phải phủ template, API, edge và client-side routing

Một ứng dụng có thể trả status khác nhau ở CDN, server, API và client route. QA chọn URL hợp lệ, redirect, deleted, unauthorized, empty, out-of-range và server failure; ghi response headers, body, rendered output và canonical. Monitoring theo pattern và release giúp phát hiện framework fallback biến mọi route thành 200. Quyết định 404 hoặc 410 không bảo đảm tốc độ loại URL khỏi index.

  • Test cả direct request và navigation nội bộ.
  • Kiểm tra API lỗi có làm trang thành thin 200.
  • Theo dõi soft 404 trong Search Console cùng server logs.

Tình huống minh họa

Route sai vẫn mở shell ứng dụng với status 200

Router được sửa để direct request trả 404 thật, còn trang lỗi vẫn cung cấp navigation hữu ích cho người dùng.

Status code decision grid

HTTP status phải mô tả trạng thái tài nguyên, không chỉ trang giao diện người dùng nhìn thấy

Exists, moved, removed và temporarily unavailable là bốn nhánh khác nhau

Google giải thích cách 2xx, 3xx, 4xx và 5xx ảnh hưởng xử lý crawl/index. Decision grid chọn 200 cho tài nguyên hợp lệ, redirect cho đích tương đương, 404/410 cho URL không còn và 5xx cho lỗi tạm thời. Soft 404 xuất hiện khi response thành công nhưng nội dung báo lỗi hoặc quá thiếu để đại diện URL.

  • Không redirect mọi URL về homepage.
  • Không trả 200 cho empty/error shell.
  • Không dùng 5xx như trạng thái xóa.

Test status ở edge, origin, API và client router cùng direct navigation

Framework có thể hiển thị đúng giao diện nhưng CDN hoặc server trả status khác. QA gửi request trực tiếp cho valid, moved, deleted, unauthorized, out-of-range và server-failure URL; sau đó so rendered output và canonical. Monitoring nhóm soft 404/5xx theo template và release. 404 hay 410 không phải mẹo tăng tốc xóa index được bảo đảm.

  • Lưu headers cùng body mẫu.
  • Kiểm tra route sau hard refresh.
  • Gắn incident với owner và rollback.

Checklist triển khai

  • Lập status decision tree.
  • Test route ở server và client.
  • Loại redirect không tương đương.
  • Theo dõi soft 404 và 5xx.

Tóm tắt

Tạo decision tree và test status tại edge/origin/API/client cho URL hợp lệ, chuyển, xóa và lỗi. Không có status code bảo đảm tốc độ index/deindex; crawler và lịch sử URL vẫn ảnh hưởng.

Tài liệu tham khảo

Ghi chú biên soạn: nội dung được tổng hợp từ các tài liệu được liệt kê và giới hạn ở góc nhìn quản lý thông tin marketing; bài không bảo đảm vị trí hiển thị trên Google.

Gọi ngayGửi nhu cầu