» »

413 request entity too large вконтакте. Изменение конфигурации Nginx

28.03.2020

Данная ошибка больше интересует вебмастеров, т.к. связана напрямую с настройками сервера и nGinx. В статье исчерпывающая информация по данной ошибке с разбором действий по устранению ошибки 413. В каких случаях возникает ошибка 413? Как исправить ошибку 413 в сжатые сроки? Опыт вебмастеров, которые решили проблему.

Что такое ошибка HTTP 413?

Ошибка 413 — Request Entity Too Large говорит о том, что файл, который вы пытаетесь загрузить на сервер слишком большой для заданной конфигурации сервера. Обычно проблема возникает среди вебмастеров, которые создают свой первый сайт на базе CMS и при этом вообще не разбираются в коде. Как результат – не настроен сервер для обработки и загрузки изображений.

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

Вебмастера могут столкнуться с ошибкой 413 Request Entity Too Large при использовании: NGINX, Apache, PHP. Чтобы устранить ошибку 413 нужно внести изменения в настройки, которые приведены ниже. Для этого вам понадобиться доступ к настройкам сервера или придется писать в поддержку хостинга, чтобы они внесли такие изменения (если вам не доступно).

По умолчанию, размер, который разрешен для загрузки – 1 мб. У меня на всех сайтах стоит 32 мб. Для пользователей размер установлен в рамках 4 мб., при этом в случае загрузки изображений на сайт, система автоматически их сжимает. Ниже представлены функции и их местонахождение.

Как исправить ошибку 413?

Если у вас NGINX

В дефолтных (стандартных) настройках стоит ограничение в 1 мб. За размер отвечает функция «client_max_body_size». Данная настройка указывает допустимый размер запроса в строке «Content-Length». В случае, когда размер больше 1 мб., возвращается ошибка 413 Request Entity Too Large.

Для решения ищем файл «nginx.conf», а в нем пункт http, где нужно добавит или изменить указанный выше размер функции. Исправляем ошибку 413 примерно вот так:

client_max_body_size 64m;

В данном случае – 64м, это уже измененный допустимый размер, который ранее был 1м. Слишком много не стоит устанавливать, если в этом нет нужды. Почему? Уже не первый раз замечаю, что при больших объемах затрачивается много оперативной памяти и процессорных минут, что может привести к «диалогу» с администрацией хостинга. После установки параметров не забудьте перезагрузить конфиг.

Если у вас PHP

Не всегда все упирается в настройки сервера, но и в настройки PHP. Вне зависимости от версии PHP для изменения допустимого размера загружаемых фалов через PHP скрипты нужно найти файл php.ini. Этот файл обычно находится в папке «etc». Открываем встроенным редактором (если есть) или текстовым редактором, вроде Notepad++. Ищем строки, которые указаны ниже:

И устанавливаем в этих строках нужные вам размеры. Например, 8М – это и есть 8 мб. Для скриптов крайне противопоказано устанавливать разрешения на загрузку больших файлов. Также не стоит разрешать загружать произвольные файлы. В случае, если сайтом заинтересован злоумышленник, он легко сможет залить файлы на сайт, которые вам не понравятся.

Если у вас Apache

В отличии от примеров выше, в Apache размер указывается в байтах. Файл для редактирования находится по следующему адресу: /etc/httpd/conf/httpd.conf или /etc/apache/apache.conf. В файле нужно найти и изменить пункт «LimitRequestBody. Ниже пример.

LimitRequestBody 1048576

В данной строчке лимит, который вы задаете – 1048576 или 8 МБ. Никаких букв после цифр ставить не нужно.

Для пользователей

Если вы загружаете фотографию или аватарку на сайт и он выдает ошибку 413, вы решить этот вопрос не сможете, разве только уменьшив размер файла. Помните, что стандартный размер – 1 мб, а значит, если сайт не принимает ваше фото или файл, просто уменьшите его до 1 Мб.

Ошибка nginx «413 Request Entity Too Large » может возникать при отправке серверу запросов большого объёма (загрузке файлов, к примеру). Причина ошибки может быть в двух местах.

— в конфигурационном файле nginx указано слишком маленькое значение переменой client_max_body_size.

(более редкое)- в конфигурационном файле apache установлено слишком маленькое значение LimitRequestBody.

Как исправить. Nginx

Для устранения ошибки откройте файл конфигурации nginx (как правило это /etc/nginx/nginx.conf ) и в секции http добавьте строку (если такая уже есть — просто замените):

Client_max_body_size 200M;

где, 200M — максимальный объём запроса (файла). В данном случае — 200 мегабайт. Приставка M — мегабайты, G — гигабайты. в результате должно получиться в конфиге что-то вроде:

Как исправить. Apache.

Откройте конфигурационный файл апача (для centOS это обычно /etc/httpd/conf/httpd.conf ) и найдя LimitRequestBody укажите нужное значение в байтах. К примеру, 1ГБ:

LimitRequestBody 1073741824

По-умолчанию система считает что значение этой переменной (если она не прописана явно в httpd.conf ) равно двум гигабайтам (2147483647 байт ), поэтому если нигде не установлено иное значение, то проблем с апачем обычно нет.

В утилите sudo, используемой для организации выполнения команд от имени других пользователей, выявлена уязвимость (CVE-2019-18634), которая позволяет повысить свои привилегии в системе. Проблема […]

Выпуск WordPress 5.3 улучшает и расширяет представленный в WordPress 5.0 редактор блоков новым блоком, более интуитивным взаимодействием и улучшенной доступностью. Новые функции в редакторе […]

После девяти месяцев разработки доступен мультимедиа-пакет FFmpeg 4.2, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и […]

  • Новые функции в Linux Mint 19.2 Cinnamon

    Linux Mint 19.2 является выпуском с долгосрочной поддержкой, который будет поддерживаться до 2023 года. Он поставляется с обновленным программным обеспечением и содержит доработки и множество новых […]

  • Вышел дистрибутив Linux Mint 19.2

    Представлен релиз дистрибутива Linux Mint 19.2, второго обновления ветки Linux Mint 19.x, формируемой на пакетной базе Ubuntu 18.04 LTS и поддерживаемой до 2023 года. Дистрибутив полностью совместим […]

  • Доступны новые сервисные релизы BIND, которые содержат исправления ошибок и улучшения функций. Новые выпуски могут быть скачано со страницы загрузок на сайте разработчика: […]

    Exim — агент передачи сообщений (MTA), разработанный в Кембриджском университете для использования в системах Unix, подключенных к Интернету. Он находится в свободном доступе в соответствии с […]

    После почти двух лет разработки представлен релиз ZFS on Linux 0.8.0, реализации файловой системы ZFS, оформленной в виде модуля для ядра Linux. Работа модуля проверена с ядрами Linux c 2.6.32 по […]

    Комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры интернета, завершил формирование RFC для протокола ACME (Automatic Certificate Management Environment) […]

    Некоммерческий удостоверяющий центр Let’s Encrypt, контролируемый сообществом и предоставляющий сертификаты безвозмездно всем желающим, подвёл итоги прошедшего года и рассказал о планах на 2019 год. […]

    413 Request Entity Too Large

    Данная ошибка может появиться в том случае, если вы загружаете какой-либо файл на сервер и размер этого файла превышает максимально разрешенный в конфиге в веб-сервера (например, в nginx по умолчанию установлено ограничение в 1 МБ). Для того, чтобы это исправить, необходимо внести определенные правки в файл конфигурации, который может быть разным, в зависимости от используемого веб-сервера. Ниже будут приведены примеры для самых популярных веб-серверов:

    nginx

    Максимальный размер файла указывается параметром client_max_body_size . Поэтому, достаточно прописать параметр и новое значение в любой конфиг, который использует nginx для сайта, на котором у вас появилась эта проблема. Получится должно что-то примерно следующее:

    Server { ... client_max_body_size 4m; ... }

    Где 4m - это 4 Мб. Для установки лимита в 32 Мб, надо соответственно написать client_max_body_size 32m , и т. д.

    После изменения настроек нужно обязательно перезагрузить конфиг в nginx.

    Apache

    Размер файла, допустимого для заливки, можно отрегулировать в главном конфиге Apache, который можно найти по адресу /etc/httpd/conf/httpd.conf (в CentOS) или /etc/apache2/apache2.conf (в Debian/Ubuntu). Задается он параметром LimitRequestBody , и ему можно прописать любое нужное значение в байтах . Например, так выглядит ограничение в 32 МБ:

    LimitRequestBody 33554432

    Для применения настроек нужно перезагрузить веб-сервер Apache.

    PHP

    Если при заливке файла используется PHP скрипт, то для PHP имеются отдельные настройки максимального размера файла. Для их изменений потребуется внести правку в файл php.ini, который расположен по адресу /etc//fpm. Открываем его любым текстовым редактором и находим следующие строки.

    Вы пытались загрузить файл в WordPress но видели ошибку 413 Request Entity Too Large? Раздражает, верно? Ну, не волнуйтесь, у нас есть решение! В этой статье мы научим вас, как исправить ошибку 413 Request Entity Too Large в WordPress.

    Что означает ошибка 413 Request Entity Too Large?

    Если коротко, ошибка 413 Request Entity Too Large происходит, когда вы пытаетесь загрузить файл, слишком большой для вашего сервера. Как правило, хостинг-провайдеры имеют определённые конфигурации на своём сервере для загрузки медиафайлов в WordPress. В большинстве случаев настроек по умолчанию более чем достаточно для ваших сообщений.

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

    Как исправить ошибку 413 Request Entity Too Large в WordPress

    К счастью, есть несколько способов решить эту проблему. Мы научим вас трём различным методам борьбы с ошибками в WordPress.

    1. Изменение файла functions.php

    Вы можете найти файл functions.php в папке тем для WordPress. Этот файл часто используется для определения «классов» и «действий» на вашем сайте WordPress. Он может добавлять функции и возможности, такие как включение миниатюр сообщений, форматов сообщений и меню навигации.

    Чтобы изменить functions.php , зайдите в Панель Управления Hostinger. Затем перейдите в Диспетчер файлов в разделе Файлы .

    В Диспетчере файлов вы увидите три папки в папке public_html . Нажмите на папку wp-content , которая даст вам список файлов справа. Дважды щёлкните папку с темами, чтобы найти файл functions.php . Убедитесь, что вы выбрали файл темы, которую вы сейчас используете.

    Дважды щёлкните файл functions.php и добавьте следующий фрагмент кода. Это увеличит значения upload_max_size , post_max_size и max_execution_time .

    @ini_set("upload_max_size" , "256M"); @ini_set("post_max_size", "256M"); @ini_set("max_execution_time", "300");

    После того, как вы закончите, сохраните изменения и попробуйте вернуться в админку WordPress, чтобы проверить, появляется ли ошибка 413.

    2. Изменение файла.htaccess

    Второй способ заключается в редактировании файла .htaccess , поэтому будьте осторожны, чтобы не вносить ненужных изменений.

    Файл .htaccess - это элемент конфигурации, который читается сервером. Он может переопределить параметры конфигурации сервера для таких вещей, как авторизация, кэширование или даже оптимизация.

    Чтобы получить доступ к файлу .htaccess , вам нужно перейти в папку public_html в вашей Панели Управления Hostinger . Справа вы увидите файл .htaccess . Дважды щёлкните по нему.

    Вы получите всплывающее окно, в котором вы можете добавить код. Прочитайте строки, когда вы найдёте # END WordPress в конце файла, вставьте в него следующий код:

    Php_value upload_max_filesize 256M php_value post_max_size 256M php_value max_execution_time 600 php_value max_input_time 600

    Обязательно сохраните модификацию и закройте окно. Вернитесь в админку WordPress и попробуйте перезагрузить сайт.

    3. Изменение конфигурации Nginx

    Если вы используете , вы получите контроль над большей частью серверной среды. Мы достигаем только базового серверного программного обеспечения (Apache или Nginx) в состоянии по умолчанию. Это означает, что если вы хотите настроить больше, вы можете пересмотреть его.

    Ошибка 413 Request Entity Too Large возникает, потому что веб-сервер настроен на ограничение больших размеров файлов. Nginx имеет client_max_body_size , чтобы разрешить максимальный размер тела запроса клиента. Если запрос превышает значение, появляется сообщение об ошибке. Это означает, что нам нужно перенастроить Nginx так, чтобы он соответствовал размеру, который мы хотим загрузить.

    Для перенастройки nginx.conf потребуется текстовый редактор. Мы рекомендуем текстовый редактор Vi, так как он отлично справится с работой.

    Получите и введите следующую команду в своём терминале, чтобы начать редактирование с помощью Vi:

    Vi /etc/nginx/nginx.conf

    После этого вы можете добавить следующие строки в nginx.conf, как показано в примере ниже. Он устанавливает максимальный размер тела клиентского запроса, который разрешает сервер. Поэтому убедитесь, что вы указали правильное число в качестве максимального размера.

    # set client body size to 8M # client_max_body_size 8M;

    Сохраните и закройте файл. Затем вы можете перезагрузить веб-сервер Nginx с помощью следующей команды:

    # nginx -s reload

    Заключение

    Если вы хотите загрузить файл большего размера, чем разрешено вашим сервером, вы столкнётесь с ошибкой 413 Request Entity Too Large в WordPress. В этом уроке мы рассмотрели 3 различных метода 413 Request Entity Too Large как исправить.