--- title: "506 Variant Also Negotiates — what it means and how to fix it" description: "A content negotiation misconfiguration: the chosen variant is itself a negotiating resource, so the server loops. What causes an HTTP 506, what to try as a visitor, and what to check if it is your own site." url: https://atoneplace.net/error/506/ site: "At One Place" --- # HTTP 506 — Variant Also Negotiates **HTTP 506: Variant Also Negotiates** A content negotiation misconfiguration: the chosen variant is itself a negotiating resource, so the server loops. ## What 506 actually means From the transparent content negotiation extension. The server picked a variant to serve, but that variant is configured to negotiate too, which would recurse forever — so it stops and reports the configuration error instead. It is a server misconfiguration by definition, and vanishingly rare outside Apache setups that use type maps. ## Common causes - An Apache type map pointing at another negotiable resource - A circular content negotiation configuration - A misconfigured `MultiViews` setup ## If you're just trying to view the page 1. Nothing — this is a configuration fault on the server 2. Report the URL to the site owner ## If it's your site 1. Check your Apache type maps (`.var` files) — a variant must be a concrete resource, not another negotiable one 2. Review `MultiViews` and `Options` settings for the affected directory 3. Consider dropping transparent content negotiation entirely in favour of `Accept`-header handling in the application ## Reference - **Status code:** 506 - **Reason phrase:** Variant Also Negotiates - **Category:** 5xx — Server Error - **Cacheable by default:** No - **Defined in:** RFC 2295 §8.1 ## Common questions ### What does HTTP 506 mean? A content negotiation misconfiguration: the chosen variant is itself a negotiating resource, so the server loops. From the transparent content negotiation extension. The server picked a variant to serve, but that variant is configured to negotiate too, which would recurse forever — so it stops and reports the configuration error instead. ### How do I fix a 506 error? Nothing — this is a configuration fault on the server ### Is 506 a client error or a server error? 506 is in the 5xx range, which means server error. The request was acceptable but the server could not fulfil it, so retrying later can succeed. ## Related pages - [500 Internal Server Error](https://atoneplace.net/error/500/) - [502 Bad Gateway](https://atoneplace.net/error/502/) - [503 Service Unavailable](https://atoneplace.net/error/503/) - [504 Gateway Timeout](https://atoneplace.net/error/504/) - [524 A Timeout Occurred](https://atoneplace.net/error/524/) - [521 Web Server Is Down](https://atoneplace.net/error/521/) - [522 Connection Timed Out](https://atoneplace.net/error/522/) - [520 Web Server Returned an Unknown Error](https://atoneplace.net/error/520/) - [525 SSL Handshake Failed](https://atoneplace.net/error/525/) - [526 Invalid SSL Certificate](https://atoneplace.net/error/526/) - [530 Origin DNS Error](https://atoneplace.net/error/530/) - [501 Not Implemented](https://atoneplace.net/error/501/) ## Sources - Hypertext Transfer Protocol (HTTP) Status Code Registry — IANA (https://www.iana.org/assignments/http-status-codes/) - RFC 9110: HTTP Semantics — IETF (https://www.rfc-editor.org/rfc/rfc9110.html)