HTTP

HTTP 416 Range Not Satisfiable vs 506 Variant Also Negotiates

HTTP 416 (Range Not Satisfiable) is a 4xx Client Error response, while 506 (Variant Also Negotiates) is a 5xx Server Error response. 416 indicates that the server cannot serve the requested byte range. The Range header value is outside the resource's size. 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 cannot serve the requested byte range. The Range header value is outside the resource's size.

When You See It

When requesting a byte range beyond the file's actual size.

How to Fix

Check the Content-Range in the response for the actual file size and adjust your Range header.

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.

416 is a 4xx Client Error response, while 506 is a 5xx Server Error response.

2.

HTTP 416: The server cannot serve the requested byte range. The Range header value is outside the resource's size.

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 416 when when requesting a byte range beyond the file's actual size.

5.

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

When to Use Which

For 416 (Range Not Satisfiable): Check the Content-Range in the response for the actual file size and adjust your Range header. For 506 (Variant Also Negotiates): Fix the server's content negotiation configuration.

Learn More