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.
| STT | Câu hỏi ra quyết định | Hành động hoặc bằng chứng cần có |
|---|---|---|
| 1 | Tài nguyên còn tồn tại, đã chuyển hay đã xóa? | Lập status decision tree. |
| 2 | Có đích thay thế tương đương cho người dùng không? | Test route ở server và client. |
| 3 | Lỗ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
- Google Search Central — HTTP status codes, network and DNS errors
- Google Search Central — Redirects and Google Search
- Google Search Central — Understand the JavaScript SEO basics
- Google Search Central — Creating helpful, reliable, people-first content
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.
