К основному контенту

Ошибка 414 Request header or cookie too large Nginx

Ошибка 400 Bad Request Nginx встречается достаточно редко. Она означает, что запрос к серверу был сформирован неверно, и поэтому отклонен. Это может быть вызвано разными причинами. Например, один из HTTP заголовков был изменен, а поля контрольных сумм не исправлены и так далее.

В этой статье мы рассмотрим частный случай данной ошибки - Request header or cookie too large Nginx. Разберем что является причиной этой ошибки, почему она может возникать и как ее исправить.

Содержание статьи: Что означает Request header or cookie too large Nginx Как исправить Request header or cookie too large Nginx Выводы Что означает Request header or cookie too large Nginx

Ошибка Request header or cookie too large означает, что запрос, который был передан веб-серверу имеет слишком большой размер. Запрос принято разделять на две части: заголовок - где находится общая информация, и тело запроса. Обычно тело запроса должно быть великим и его большой размер не вызывает никаких проблем. Тогда как заголовок обычно не большой и если браузер чего-то намудрит и передаст слишком много данных, то вы получите такую ошибку.

Есть два варианта решения проблемы: Исправить код сайта - естественно, что браузер не будет сам выдавать вам такие запросы. Они - результат ошибки в коде сайта, а значит исправив код - вы решите проблему; Увеличить максимальный размер заголовка - если же вы уверены, что заголовок должен быть большим и это нормально для вашего сайта, то, возможно, стоит увеличить лимиты на размер заголовка в Nginx; Если вы пользователь, то ждать пока ошибку исправит администратор ресурса. Как исправить Request header or cookie too large Nginx



За максимальный размер передаваемого пакета отвечают три параметра, которые нужно разместить в секции http: client_body_buffer_size - размер буфера для тела запроса; client_header_buffer_size - размер буфера для заголовка; large_client_header_buffers - максимальное количество и размер буфера для чтения большого заголовка.

Больше всего нас интересует последняя строка. Первым парамтером передается количество буферов, а вторым размер каждого из них. Если размер заголовка превысит размер одного буфера, то пользователь получит ошибку 414. По умолчанию размер одного буфера равняется 8 килобайт. Делаем размер буфера для обычных запросов равным 8 килобайт:

client_header_buffer_size 8k;

Затем создаем восемь буферов с размером 64 килобайта для хранения больших заголовков. Буферы выделяются по мере надобности, так что за потребление памяти можно особо не опасаться:

large_client_header_buffers 8 64k;

Эти строки нужно добавить в секцию http перед всеми секциями server. Дальше можете перезагрузить Nginx:

nginx -s reload

И проверить воспроизводится ли ошибка. Если все было сделано правильно, то ошибки больше быть не должно. Выводы

В этой небольшой статье мы рассмотрели что делать с ошибкой request header or cookie too large nginx. Если у вас есть доступ к серверу, на котором расположен сайт по ssh, то вы можете исправить ее за несколько минут. Если у вас остались вопросы, спрашивайте в комментариях!

Комментарии


Дистанционная компьтерная помощь, удаленная компьютерная помощь онлайн.

Популярные сообщения из этого блога

Лучшие плагины для OBS Studio

Open Broadcast Software или OBS - это свободное программное обеспечение с открытым исходным кодом для стриминга аудио и видео данных в сеть интернет. Программа полностью кроссплатформенная и может работать в Windows, Linux или MacOS. Это отличная альтернатива для таких программ, как Wirecast и XSplit. OBS использует для вещания стандартный протокол обмена сообщениями в реальном времени, а поэтому может транслировать данные в любой сервис, поддерживающий это, например, Yotube. Несмотря на широкие возможности OBS, программа поддерживает еще и множество плагинов. В этой статье мы рассмотрим лучшие плагины для OBS Studio, которые вы можете использовать. Содержание статьи: Лучшие плагины OBS Studio 1. Browser Source Plugin 2. Video Source Plugin 3. Simple Scene Switcher 4. DirectShow Audio Source 5. CLR Browser Source 6. OBS Remote 7. AMD Advanced Media Framework Encoder 8. Text Source Plugin Выводы Лучшие плагины OBS Studio Чтобы найти плагины OBS Studio для Video пользователям пр…

Лучшие аналоги Paint для Linux

Когда я работал в Windows, я часто использовал стандартную программу редактора изображений Windows - Paint. Не всегда нужен очень и многофункциональный инструмент вроде Photoshop или Gimp. Иногда, чтобы подправить ту или иную картинку, дорисовать на ней несколько фигур или вставить текст достаточно простого, легкого в освоении графического редактора вроде Paint. В Linux таких программ довольно много. В этой инструкции мы рассмотрим лучшие аналоги Paint для Linux. В этот список не будут включены такие программы, как Gimp и Krita, ведь это полнофункциональные графические редакторы, векторные редакторы, такие как Inkscape мы тоже рассматривать не будем. А теперь перейдем к списку. Содержание статьи: KolourPaint MyPaint Gnome Paint XPaint Pinta mtPaint GPaint Rassam-paint Выводы KolourPaint На первом месте в списке аналогов Piant для Linux будет KoloutPaint. Это стандартный графический редактор для окружения рабочего стола KDE. Он поддерживает множество форматов изображений PNG, J…

Подключение OneDrive в Linux

OneDrive (Ранее известный как SkyDrive) это популярное облачное хранилище файлов от Майкрософт. Сейчас OneDrive бесплатно предоставляет 7 гигабайт пространства новым пользователям. Как вы знаете OneDrive хорошо интегрирован с другими продуктами компании  Microsoft. В OneDrive Также есть официальный клиент который автоматически загружает ваши видео и фотографии с камеры в облако. Но к сожалению этот клиент недоступен для операционных систем семейства Linux. Но не все так плохо. Сообщество открытого программного обеспечения уже нашло решение. Это opedrive-d от Boilermaker. Запустившись как демон программа автоматически синхронизирует локальную папку с облаком OneDrive. Содержание статьи: Установка Onedrive-d в Linux Настройка Синхронизация локальной папки с OneDrive Установка Onedrive-d в Linux Несмотря на то что onedrive-d разрабатывается для Ubuntu/Debian, CentOs/Fedora/RHEL поддерживается тоже хорошо. Для установки достаточно набрать несколько команд: $ git clone https://gith…