HTTP 101 Switching Protocols vs 506 Variant Also Negotiates
HTTP 101 (Switching Protocols) is a 1xx Informational response, while 506 (Variant Also Negotiates) is a 5xx Server Error response. 101 indicates that the server understands the Upgrade header field request and indicates which protocol it is switching to. In contrast, 506 means that the server has an internal configuration error: the chosen variant resource is configured to engage in content negotiation itself.
描述
The server understands the Upgrade header field request and indicates which protocol it is switching to.
何时出现
When upgrading from HTTP/1.1 to WebSocket, or to HTTP/2.
如何修复
This is normal behavior during protocol upgrades. Ensure your client supports the target protocol.
描述
The server has an internal configuration error: the chosen variant resource is configured to engage in content negotiation itself.
何时出现
Rare. Indicates a misconfigured server-side content negotiation loop.
如何修复
Fix the server's content negotiation configuration.
主要区别
101 is a 1xx Informational response, while 506 is a 5xx Server Error response.
HTTP 101: The server understands the Upgrade header field request and indicates which protocol it is switching to.
HTTP 506: The server has an internal configuration error: the chosen variant resource is configured to engage in content negotiation itself.
You encounter 101 when when upgrading from HTTP/1.1 to WebSocket, or to HTTP/2.
You encounter 506 when rare. Indicates a misconfigured server-side content negotiation loop.
何时使用哪个
For 101 (Switching Protocols): This is normal behavior during protocol upgrades. Ensure your client supports the target protocol. For 506 (Variant Also Negotiates): Fix the server's content negotiation configuration.