HTTP 4xx

406 Not Acceptable

The server cannot produce a response matching the Accept headers the client sent. In practice it is far more often a web application firewall (ModSecurity, a hosting panel rule) rejecting a request it judged suspicious, since 406 is the default status for a ModSecurity denial.

4xx Client errorCommonly seen

What causes it

  • An Accept, Accept-Language or Accept-Encoding header the server cannot satisfy, or a WAF rule matching the request: a bot or scanner user agent, a payload that looks like SQL or script injection, a blocked IP or region.

How to fix it

Send Accept headers the server can honor, typically Accept: */*. If the content is fine in a browser and 406 appears only from scripts, monitors or certain regions, check the WAF log (ModSecurity audit log, or the host's security panel) and allowlist the client or relax the rule.

Example response

A typical raw HTTP response a client receives for a 406, with the headers this code is defined around.

HTTP/1.1 406 Not Acceptable
Content-Type: text/html; charset=utf-8

Know before your visitors do.

Sentinel checks your site around the clock from multiple regions and alerts you the moment it starts returning a 4xx error, so you can fix it before it costs you.