- Что такое ошибка HTTP 413?
- Источник ошибок Request Entity Too Long
- Как исправить ошибку HTTP 413 (Request Entity Too Long)
- Исправление ошибки сервера 413 владельцем сайта
- Увеличение разрешенного размера для загрузки файлов на Nginx и Apache
- Исправление ошибки на WordPress
- nginx
- Как исправить ошибку 413?
- Если у вас NGINX
- Если у вас PHP
- Если у вас Apache
- Apache
- httpd.conf
- .htaccess
Что такое ошибка HTTP 413?
Ошибка 413 — Request Entity Too Large означает, что файл, который вы пытаетесь загрузить на сервер, слишком велик для указанной конфигурации сервера. Обычно проблема возникает у веб-мастеров, которые создают свой первый сайт на базе CMS и совершенно не разбираются в коде. В результате сервер не настроен для обработки и загрузки изображений.
Обратите внимание, что в отличие от ошибки 409, это особая проблема. Здесь нет конфликта между настройками сервера. Вам просто нужно изменить переменные в настройках, если они доступны вам в панели управления вашей учетной записи хостинга.
Веб-мастера могут столкнуться с ошибкой 413 Слишком большой объект запроса при использовании: NGINX, Apache, PHP. Чтобы устранить ошибку 413, вам необходимо внести изменения в настройки ниже. Для этого вам нужно будет получить доступ к настройкам сервера или вам нужно будет написать в службу поддержки хостинга, чтобы они могли внести эти изменения (если они недоступны для вас).
По умолчанию допустимый размер загрузки составляет 1 МБ. У меня на всех сайтах 32МБ. Для пользователей размер установлен в пределах 4 МБ, при этом в случае загрузки изображений на сайт система автоматически сжимает их. Функции и их расположение показаны ниже.
Источник ошибок Request Entity Too Long
Проблемы Request Entity Too Long могут быть отнесены к поврежденным или отсутствующим файлам, ошибочным записям реестра, связанным с Request Entity Too Long, или к заражению вирусом / вредоносным ПО.
В частности, проблемы запрошенной сущности, которые слишком долго возникают из-за:
- Слишком длинный ключ реестра запрошенной сущности поврежден.
- Запрошенный объект слишком долго поврежден вирусом или вредоносным ПО.
- Другая программа злонамеренно или по ошибке удалила файлы, связанные с Request Entity Too Long.
- Другое приложение конфликтует с Request Entity Too Long или другими общими ссылками.
- Неполная установка связанного с Request Entity Too Long приложения или поврежденная загрузка.
Как исправить ошибку HTTP 413 (Request Entity Too Long)
Исправление ошибки сервера 413 владельцем сайта
Если вы являетесь владельцем сайта, который возвращает ошибку 413 при загрузке файлов, вам необходимо изменить конфигурацию сервера. Процедура зависит от используемой технологии.
Чтобы понять, что вызвало ошибку, нужно посмотреть логи. Это сэкономит ваше время. Вот подробная инструкция о том, как просматривать журналы на панели инструментов Timeweb. В зависимости от информации, содержащейся в журналах, вы поймете, как исправить ошибку 413.
Увеличение разрешенного размера для загрузки файлов на Nginx и Apache
В Nginx максимально допустимый размер файла устанавливается в параметре client_max_body_size. По умолчанию это 1 МБ. Если запрос превышает указанное значение, пользователь получает ошибку 413 Request Entity Too Large.
Параметр client_max_body_size находится в файле nginx.conf. Чтобы его изменить, вам понадобится текстовый редактор, например vi.
Подключитесь к серверу по SSH и выполните в консоли следующую команду:
vi /etc/nginx/nginx.conf
Встроенный редактор откроет файл nginx.conf. В разделе http добавьте или отредактируйте следующую строку:
client_max_body_size 20M;
Сохраните и закройте файл. Затем проверьте конфигурацию вашего файла:
$ sudo nginx -t
Перезагрузите сервер с помощью следующей команды:
# nginx -s reload
После перезагрузки новая конфигурация вступит в силу с увеличенным ограничением на размер загружаемого файла.
В Apache параметр, устанавливающий максимальный размер загружаемого файла, называется LimitRequestBody. По умолчанию лимит не установлен (равен 0).
В CentOS основная конфигурация находится в /etc/httpd/conf/httpd.conf. В Debian / Ubuntu в /etc/apache2/apache2.conf.
Значение выражается в байтах:
Предельный запрос тела 33554432
Эта запись устанавливает максимально допустимый размер 32 МБ.
Вы также можете изменить конфигурации через панель управления. Я использую ISPmanager, поэтому покажу это на примере.
- Разверните раздел Домены и перейдите на вкладку WWW Домены».
- Выберите домен, на котором появляется ошибка, и нажмите кнопку «Конфигурация».
Появится вкладка с конфигурациями Apache и Nginx. Вы можете изменить их вручную, установив ограничение на размер загружаемого файла.
Исправление ошибки на WordPress
Есть два способа исправить ошибку в WordPress.
Первый способ — изменить размер, разрешенный в файле functions.php. Этот файл отвечает за добавление функций и функций, таких как меню навигации.
- Откройте ваш файловый менеджер.
- Перейдите в папку public.html.
- Откройте каталог wp-content / themes.
- Выберите тему, которая используется на вашем сайте WordPress.
- Загрузите файл functions.php и откройте его в любом текстовом редакторе.
В панели управления Timeweb вы также можете использовать встроенный редактор или IDE — путь будет таким же, как указано выше: public.html / wp-content / themes / your theme / functions.php.
В конце файла functions.php добавьте следующий код:
@ini_set (‘upload_max_size’, ‘256M’); @ini_set (‘post_max_size’, ‘256M’); @ini_set (‘max_execution_time’, ‘300’);
Сохраните изменения и загрузите измененный файл обратно на сервер. Проверьте ошибку 413.
Второй способ — изменить файл .htaccess. Это элемент конфигурации, который может переопределить конфигурацию сервера с точки зрения авторизации, кэширования и даже оптимизации. Найти его можно через файловый менеджер в папке public.html.
Скачайте файл себе на компьютер, сделайте резервную копию на всякий случай. Затем откройте .htaccess в текстовом редакторе и после строки #END WORDPRESS вставьте следующий код:
php_value upload_max_filesize 999M php_value post_max_size 999M php_value max_execution_time 1600 php_value max_input_time 1600
Сохраните файл и загрузите его обратно на сервер, заменив исходный файл. То же самое можно сделать через встроенный редактор или IDE в панели управления Timeweb.
nginx
Максимальный размер файла определяется параметром client_max_body_size. Поэтому вам просто нужно зарегистрировать параметр и новое значение в любой конфигурации, которая использует nginx для сайта, на котором возникает эта проблема. Результат должен быть примерно таким:
сервер {. client_max_body_size 4m;… }
Где 4 м — это 4 МБ. Чтобы установить лимит в 32 МБ, нужно написать client_max_body_size 32m и так далее
После изменения настроек обязательно перезагрузите конфигурацию в nginx.
Как исправить ошибку 413?
Если у вас NGINX
В настройках по умолчанию (стандартных) установлено ограничение в 1 МБ. За размер отвечает функция client_max_body_size. Этот параметр указывает размер запроса, разрешенный в строке «Content-Length». В случае, если размер превышает 1 МБ, возвращается ошибка 413 Запрошенный объект слишком большой.
В качестве решения ищем файл «nginx.conf» и в нем элемент http, в котором вам нужно добавить или изменить размер указанной выше функции. Исправим ошибку 413 вот так:
server {
…
client_max_body_size 64 м;
…
}
В данном случае — 64 м, это уже измененный допустимый размер, который ранее составлял 1 м. Слишком много не стоит устанавливать, если не нужно. Почему? Я не впервые замечаю, что большие объемы потребляют много оперативной памяти и процессорных минут, что может привести к «диалогу» с администрацией хостинга. После настройки параметров не забудьте перезагрузить конфиг.
Если у вас PHP
Не всегда все зависит от настроек сервера, но еще и от настроек PHP. Независимо от версии PHP, чтобы изменить допустимый размер файлов, загружаемых с помощью сценариев PHP, вам необходимо найти файл php.ini. Этот файл обычно находится в папке «etc». Открываем его встроенным редактором (если есть) или текстовым редактором типа Notepad ++. Ищем строки, перечисленные ниже:
Upload_max_filesize
Post_max_size
И давайте зададим в этих строках нужный вам размер. Например, 8 МБ равно 8 МБ. Скриптам категорически противопоказано выставлять разрешения на закачку больших файлов. Также не разрешайте загрузку произвольных файлов. Если злоумышленник заинтересовался сайтом, он может легко загрузить на сайт файлы, которые вам не нравятся.
Если у вас Apache
В отличие от предыдущих примеров, Apache указывает размер в байтах. Файл для редактирования находится по следующему адресу: /etc/httpd/conf/httpd.conf или /etc/apache/apache.conf. В файле вам нужно найти и отредактировать элемент LimitRequestBody. Ниже приведен пример.
Тело запроса на ограничение 1048576
В этой строке установлен лимит 1048576 или 8 МБ. Необязательно вводить буквы после цифр.
Apache
httpd.conf
Размер файла, разрешенный для загрузки, можно изменить в основной конфигурации Apache, которую можно найти в /etc/httpd/conf/httpd.conf (в CentOS) или /etc/apache2/apache2.conf (в Debian / Ubuntu). Он задается параметром LimitRequestBody, и в него можно записать любое желаемое значение в байтах. Например, вот как выглядит ограничение в 32 МБ:
Предельный запрос тела 33554432
Чтобы применить настройки, необходимо перезапустить веб-сервер Apache.
.htaccess
Чаще всего веб-сервер Apache использует файл .htaccess для настройки определенного сайта, который находится в корневом каталоге веб-сайта. Удобство этого метода в том, что вы можете написать необходимые настройки, которые будут применяться только к этому каталогу и веб-сайту, который использует этот каталог.
Если скрипт, используемый для загрузки, находится в подкаталоге с собственным файлом .htaccess, его настройки будут иметь более высокий приоритет!
Для этого вам нужно открыть существующий файл .htaccess (или создать его, если он отсутствует) и добавить следующие строки (32 МБ в байтах):
Предельный запрос тела 33554432
Если для работы на сайте и загрузки файла используется PHP, вам необходимо добавить еще одну строку:
php_value upload_max_filesize 32M
- https://error4xx.com/oshibka-413-kak-ispravit/
- https://www.solvusoft.com/ru/errors/%D0%BA%D0%BE%D0%B4%D1%8B-%D1%81%D0%BE%D1%81%D1%82%D0%BE%D1%8F%D0%BD%D0%B8%D0%B9-%D0%B1%D1%80%D0%B0%D1%83%D0%B7%D0%B5%D1%80%D0%B0/microsoft-corporation/windows-operating-system/http-error-413-request-entity-too-long/
- https://timeweb.com/ru/community/articles/oshibka-413-request-entity-too-large-chto-eto-kak-eyo-ispravit
- https://pc.ru/articles/ispravlyaem-oshibku-413-request-entity-too-large