Sự khác biệt giữa 301 và 302 trong HTTP là gì?


9

Tôi thấy tất cả các trang web nhỏ như sử dụng 302

Nhưng có gì khác biệt? Có vẻ cả hai đều làm việc cho tôi

Câu trả lời:


12

Trạng thái 301 (di chuyển vĩnh viễn) có nghĩa là tài nguyên đã được di chuyển vĩnh viễn đến một vị trí mới. Máy khách (trình duyệt) nên sử dụng vị trí mới thay vì vị trí cũ trong tương lai.

Trạng thái 302 (tìm thấy) có nghĩa là tài nguyên tạm thời được đặt ở nơi khác. Khách hàng nên sử dụng vị trí đã cho cho yêu cầu hiện tại, nhưng trong tương lai nên tiếp tục sử dụng vị trí cũ.

Cả hai mã trạng thái sẽ có tác dụng khiến trình duyệt tuân theo chuyển hướng. Bạn nên chọn sử dụng trạng thái 301 hoặc 302 tùy thuộc vào việc chuyển hướng là vĩnh viễn hay tạm thời.

Thông tin thêm về các mã phản hồi HTTP này có thể được tìm thấy trong RFC 2616 .


Điều gì xảy ra nếu tôi muốn hủy 301? Điều đó nằm ngoài tầm kiểm soát vì nó không được sử dụng lại?
vps

@vps Bạn có thể hủy chuyển hướng 301, nhưng không có gì đảm bảo khách hàng sẽ yêu cầu lại URL gốc. Nếu bạn muốn có thể hủy chuyển hướng trong tương lai, thì bạn có thể sử dụng 302 tốt hơn
Phil Ross

3

Khi một công cụ tìm kiếm tìm thấy mã trạng thái 301 trong tiêu đề phản hồi của trang web, nó hiểu rằng trang web này không còn tồn tại, nó tìm kiếm tiêu đề vị trí trong phản hồi, chọn URL mới và thay thế URL được lập chỉ mục bằng URL mới và cũng chuyển pagerank .

Vì vậy, công cụ tìm kiếm sẽ làm mới tất cả các URL được lập chỉ mục không còn tồn tại (tìm thấy 301) với URL mới, điều này sẽ giữ lại lưu lượng truy cập trang web cũ của bạn, pagerank và chuyển hướng nó sang một cái mới (bạn sẽ không mất lưu lượng truy cập của trang web cũ).

Trình duyệt: nếu trình duyệt tìm thấy mã trạng thái 301 thì nó sẽ lưu ánh xạ URL cũ với URL mới, máy khách / trình duyệt sẽ không cố yêu cầu vị trí ban đầu mà sử dụng vị trí mới từ bây giờ cho đến khi xóa bộ đệm.

Khi công cụ tìm kiếm tìm thấy trạng thái 302 cho một trang web, nó sẽ chỉ tạm thời chuyển hướng đến vị trí mới và thu thập dữ liệu cả trang, URL trang web cũ vẫn tồn tại trong cơ sở dữ liệu của công cụ tìm kiếm và nó luôn cố gắng yêu cầu vị trí cũ và thu thập dữ liệu, khách hàng / trình duyệt vẫn sẽ cố gắng yêu cầu vị trí ban đầu.

Đọc thêm về cách triển khai nó trong asp.net c # và mức độ ảnh hưởng trong công cụ tìm kiếm - http://www.dotnetbull.com/2013/08/301-permanent-vs-302-t tạm - status - code- aspnet-csharp-Thực hiện.html


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.