HTTP

HTTP 100 Continue vs 506 Variant Also Negotiates

HTTP 100 (Continue) is a 1xx Informational response, while 506 (Variant Also Negotiates) is a 5xx Server Error response. 100 indicates that the server has received the request headers and the client should proceed to send the request body. This lets the client know it can continue with the request or abort if the headers were rejected. In contrast, 506 means that the server has an internal configuration error: the chosen variant resource is configured to engage in content negotiation itself.

Description

The server has received the request headers and the client should proceed to send the request body. This lets the client know it can continue with the request or abort if the headers were rejected.

When You See It

When a client sends an Expect: 100-continue header, the server responds with 100 before the client sends the body.

How to Fix

This is an interim response — no fix needed. The client should continue sending the request body.

Description

The server has an internal configuration error: the chosen variant resource is configured to engage in content negotiation itself.

When You See It

Rare. Indicates a misconfigured server-side content negotiation loop.

How to Fix

Fix the server's content negotiation configuration.

Key Differences

1.

100 is a 1xx Informational response, while 506 is a 5xx Server Error response.

2.

HTTP 100: The server has received the request headers and the client should proceed to send the request body. This lets the client know it can continue with the request or abort if the headers were rejected.

3.

HTTP 506: The server has an internal configuration error: the chosen variant resource is configured to engage in content negotiation itself.

4.

You encounter 100 when when a client sends an Expect: 100-continue header, the server responds with 100 before the client sends the body.

5.

You encounter 506 when rare. Indicates a misconfigured server-side content negotiation loop.

When to Use Which

For 100 (Continue): This is an interim response — no fix needed. The client should continue sending the request body. For 506 (Variant Also Negotiates): Fix the server's content negotiation configuration.

Learn More