Resolved — 400 Bad Request: Request Header or Cookie too Large via Nginx

e commerce 1606962 640

I run some of my websites via Nginx HTTP servers and some of my Nginx configuration are configured for different environments. So when I got this error message (400 Bad Request: Request Header or Cookie Too Large) while working on one of my servers, I quickly some research and resolve it.

If you find your self in similar situation, follow the steps below to get it resolved quickly.

Oh, by the way, this could also be your browser is sending a very large cookie and the server is refusing to serve the page. In addition to a browser sending large cookie, it could also be a Nginx configuration issue and adjusting Nginx’s buffer size to accommodate large cookies could help.

If you don’t want to clear your browser cookies or reset it, then follow the steps below to adjust Nginx configuration to allow large cookies.

When you see this error message it means a header or some of the headers sent to Nginx is too large and well over the configuration limit, and Nginx is rejecting it.To get it resolved, follow the steps below:

oh, just so you know, the default buffer number and size for Nginx is 4 and 8k.

If a header size is above the limit above, you’ll get that error message.

On Nginx HTTP server, open the server configuration file.

sudo nano /etc/nginx/sites-available/

The location of your server configuration file may differ from above. When the file opens, add this line of configuration and save.

server {
    # .
    large_client_header_buffers 4 16k;
    # .

Save the file and exit

The Nginx states that the line is only valid in http or server contexts. so make sure you add the configuration line the either context. After that, restart or reload Nginx server.

sudo systemctl reload nginx.service

Test again and the error should be gone.

If you’re still getting the error after restarting, bump the number to 4 and 32k. then restart Nginx server.

Another thing to look at is if you’re running a Nginx proxy with proxy_set_header config, you should simply remove that line from your proxy configuration block.

Example, remove the line below from your proxy configuration block if you have it configured, then save and restart Nginx.

proxy_set_header Host;

These steps above should get you back to a functioning site.

If all the steps above don’t work, there may be other issues in play there. clear your browser’s cookies and maybe reset your browser by deleting all data stored in it, hopefully it should work.

Cookie To Large Nginx


You may also like the post below:


  1. Why remove proxy_set_header Host? Don’t just remove stuff you don’t understand?

    1. Request Header Or Cookie Too Large


  3. am sorry but please stop showing that

  4. Very good

  5. Why it is no working

  6. why remove proxy_set_header Host ?
    some sites will stop working

  7. horrible idea to remove the Host header, you probably saw that here and thought it was a good idea for some reason. you’re also suggesting to “bump 4 to 32k” but that’s also incorrect if you go over syntax, it should be doubling 16k to 32k not bumping the number of buffers.. avoid the changes suggested here, go read over the docs instead.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.