Ý nghĩa
Tài nguyên có nhiều biểu diễn (ngôn ngữ, định dạng) và client hoặc người dùng nên chọn một. Máy chủ có thể gợi ý lựa chọn ưu tiên qua Location.
Nguyên nhân thường gặp
- Thương lượng nội dung không chọn được giữa các biến thể
- Máy chủ liệt kê các định dạng hoặc ngôn ngữ thay thế
Cách khắc phục
Nếu bạn là máy khách hoặc người truy cập
Theo Location nếu có, hoặc chọn trong các liên kết được liệt kê. Trình duyệt không tự chọn.
Nếu bạn quản lý trang web hoặc API
Ưu tiên thương lượng phía máy chủ (Accept, Accept-Language) và trả 200 với kết quả phù hợp nhất; 300 hiếm khi mang lại trải nghiệm tốt nhất.
Phản hồi mẫu
HTTP/1.1
HTTP/1.1 300 Multiple Choices
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Link: </doc.en.html>; rel=alternate; hreflang=en
Link: </doc.de.html>; rel=alternate; hreflang=de
Content-Length: 0 Đặc tả
Câu hỏi thường gặp
› Trình duyệt có tự theo 300 không?
Một số theo header Location nếu có; nếu không, người dùng thấy phần thân trang với các lựa chọn.
› 300 có phù hợp cho trang đa ngôn ngữ không?
Thường là không. Hãy chuyển hướng bằng 302 hoặc phục vụ đúng ngôn ngữ kèm liên kết hreflang.