Вы пытаетесь загрузить файл на свой WordPress сайт, но постоянно получаете ошибку «Загруженный файл превышает директиву upload_max_filesize в php.ini»?
Эта ошибка возникает, когда вы пытаетесь загрузить большой файл, который может быть изображением, плагином, темой или видео. Если размер загружаемого файла превышает максимально допустимый размер настроек загрузки на вашем сервере, вы постоянно будите получать эту ошибку.
Как исправить? Отредактируйте настройки конфигурации сервера, чтобы увеличить максимальный размер загружаемого файла.
В этой статье мы решим эту проблему. Не волнуйтесь, это не так сложно, как может показаться. Я покажу четыре разных метода, и вы можете выбрать любой из них, который будет удобен и легок для выполнения.
Что вызывает ошибку «Загруженный файл превышает директиву upload_max_filesize в php.ini»?
В предыдущем абзаце мы поняли что хостинги (или настройки сервер)а запрещают нам загружать большие файлы, такие как изображения, видео, плагины или темы на сервер. Они хотят, чтобы ресурсы сервера были справедливо распределены между пользователями (обычно на одном сервере лежат между 50-100 сайтов разных клиентов). Ограничивая размер файла, они убеждаются в том, что ни один веб-сайт не использует непропорциональное количество места на сервере или памяти.
В WordPress вы можете проверить свой лимит загрузки, открыв страницу Медиафайлы — Добавить новый.
Нам придется редактировать системные файлы, учитывая что есть вероятность написать код с ошибкой, я рекомендую вам перед началом создать резервную копию вашего сайта.
Как исправить ошибку upload_max_filesize
в WordPress?
Чтобы загрузить большой файл на свой веб-сайт, вам нужно увеличить лимит загрузки на вашем сервере. Мы предложим четыре разных способа достижения этого — по крайней мере, один из них должен работать для вашего сайта.
Примечание: Вы можете настроить лимит загрузки на желаемое значение, только если ваш хостинг-провайдер его поддерживает. Если размер вашего файла составляет 10 МБ, а ваш хостинг поддерживает только до 8 МБ, то вам придется перейти к более хорошему хостинг-провайдеру.
Чтобы узнать свой лимит памяти PHP, перейдите в Инструменты — Здоровье сайта — Информация — Сервер. (Лимит памяти важен, поскольку для обработки большой фотографии php скрипту нужна память и время)
Изменение конфигураций PHP в cPanel
Давайте начнем с самого простого метода, который должен работать нормально, если ваш хостинг использует cPanel для управления хостингом.
Если ваш хостинг-провайдер не предлагает cPanel, вы можете попробовать один из других вариантов ниже.
Вот как увеличить максимальный размер загрузки в cPanel:
- Войдите в свою учетную запись хостинга.
- Откройте cPanel.
- Перейдите в Select PHP Version > PHP Options / Options. Или, в некоторых ситуациях, вам может понадобиться найти инструмент под названием MultiPHP INI Editor.
- Измените значение для upload_max_filesize в соответствии с вашими потребностями. (так же увеличьте memory_limit и post_max_size)
Изменение кода в файле .htaccess и upload_max_filesize
Файл .htaccess позволяет вам контролировать ключевые конфигурационные данные для вашего веб-сервера. На многих хостингах вы можете отредактировать этот файл, чтобы увеличить максимальный размер загружаемого файла.
Для начала подключитесь к своему серверу с помощью FTP-клиента. Добавьте следующий код как показано на скриншоте ниже:
php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value memory_limit 128M
#Дополнительные параметры
php_value max_execution_time 300
php_value max_input_time 300
Сохраните и закройте файл. Попробуйте загрузить медиафайл в админке WordPress и проверить решена ли проблема. Если проблема не решена, значит настройки вашего хостинга не позволяют вам использовать это значение и данный способ. Верните файл в исходное состояние и пробуйте следующий метод.
Редактирование файла wp-config.php и upload_max_filesize
Файл wp-config.php содержит важные настройки конфигурации для вашего сайта на WordPress. Без файла конфигурации вы потеряете доступ к содержимому своего сайта. Осторожно обращайтесь с этим файлом. Откройте данный файл через FTP (как мы делали это выше) или используйте файл менеджер вашего хостинг провайдера (очень часто в панели хостинга можно добраться к файлам и редактировать их).
Найдите строчку /* That's all, stop editing! */
и перед ней вставьте следующий код:
@ini_set('upload_max_size' , '256M' );
Сохраните и закройте wp-config.php файл. Перейдите в Медиафайлы и протестируйте. Если не помогло, пробуйте следующий метод.
Редактирование файла php.ini и upload_max_filesize
Файл php.ini позволяет переопределить настройки сервера, в том случае конечно, если ваш хостинг разрешает такие действия. Откройте корневую папку вашего сайта (это папка где лежат файлы wp-config.php или .htaccess) и создайте файл php.ini если у вас его нет.
Добавьте следующий код и сохраните файл:
upload_max_filesize = 256M
Этот способ не всегда срабатывает, поскольку не все хостинг провайдеры разрешают пользователям изменять настройки сервера посредствам конфигурационного файла php.ini.
Если способ сработал, рекомендую так же задать и другие важные параметры в этом файле (увеличивайте значения по мере необходимости и ресурсам вашего сервера):
post_max_size = 256M
memory_limit = 256M
file_uploads = On
max_execution_time = 300
Редактирование файла functions.php и upload_max_filesize
Добавьте этот код в файл functions.php вашей темы. Если данный метод не помог, не забудьте убрать эти строки кода из вашего файла.
@ini_set( 'upload_max_size', '256M' );
@ini_set( 'post_max_size', '256M');
@ini_set( 'max_execution_time', '300');
Заключение
Для исправления ошибки «Загруженный файл превышает директиву upload_max_filesize в php.ini» можно изменить значения настроек upload_max_filesize и post_max_size в файле php.ini, однако перед этим необходимо убедиться, что новые значения не нарушат безопасность сервера.
Если же ни один из этих методов не помог, следует связаться со службой поддержки хостинг-провайдера. Также можно использовать FTP-клиент для загрузки файлов на сервер, поскольку в отличие от HTTP, FTP не имеет ограничений на размер загрузки.