Php увеличить размер загружаемого файла

Обновлено: 07.07.2024

Опция MAX_FILE_SIZE не должна позволять передачу файлов, размер которых превышает лимит, установленный конфигурационной директивой upload_max_filesize в php.ini . Ограничение по умолчанию составляет 2 мегабайта.

В случае, если установлены ограничения памяти, вам может понадобиться увеличить значение опции memory_limit. Убедитесь в том, что значение memory_limit достаточно велико.

В случае, если опция max_execution_time установлена слишком маленьким значением, необходимое время работы скрипта может превышать это значение. Убедитесь в том, что значение max_execution_time достаточно велико.

Замечание: Директива max_execution_time касается исключительно времени, используемого непосредственно самим скриптом. Время, потраченное на внешние действия, такие как системные вызовы при помощи функции system() или sleep() , обращения к базе данных, а также время, потраченное на загрузку файла и другие действия, происходящие вне скрипта, не учитываются при определении максимально допустимого промежутка времени, отведённого для выполнения скрипта.

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

Если директива post_max_size слишком мала, большие файлы не смогут быть загружены на сервер. Убедитесь, что значение директивы post_max_size достаточно велико.

Опция max_file_uploads контролирует максимальное количество загружаемых файлов в течение одного запроса. Если загружается большее количество файлов, чем указано в этом ограничении, то массив $_FILES прекратит дальнейшую обработку файлов по достижении этого ограничения. Например, если max_file_uploads установлено в 10 , то $_FILES никогда не будет содержать больше 10 элементов.

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

Поскольку разные системы по-разному работают с файловой структурой, нет никаких гарантий того, что файлы с экзотическими именами (например, которые содержат пробельные символы) будут обработаны корректно.

Разработчики не должны использовать одинаковые имена для обычных полей ввода (тег input ) и полей выбора файла в пределах одной и той же формы (например, используя имя для тега input наподобие foo[] ).

Данная статья посвящена настройке максимального размера файла в PHPMyAdmin и максимальному размеру php-запроса, обрабатываемого интерпретатором, на OpenVZ VPS и KVM VPS. Как многим известно, СУБД PHPMyAdmin написана на языке PHP, поэтому мы будем производить изменения в конфигурационных файлах интерпретатора PHP.

Содержание

Настройка с помощью SSH/SFTP

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

После редактирования php.ini необходимо перезапустить веб-сервер.
Для этого выполните команду от имени root пользователя :

Проверяем максимальный размер загружаемого файла:

Проверка максимального размера загружаемого файла

ISPManager

При использовании контрольной панели ISP manager, Вам необходимо выполнить следующие действия:

  1. Войти под пользователем root.
  2. Настройки web-сервера -> PHP -> Выбрать версию PHP -> Настройка

Проверка максимального размера загружаемого файла в ISPManager

Изменение переменной post_max_size

DirectAdmin

В контрольной панели DirectAdmin отсутствует возможность редактирования размера загружаемого файла в веб интерфейсе. Для КП DirectAdmin производить настройки необходимо с помощью ssh либо sftp протокола по инструкции выше.

Однако в DirectAdmin существует возможность конфигурирования файла php.ini для каждого пользователя в отдельности. Будут приведены примеры команд, которые необходимо выполнять при подключении к ВПС по SSH.

Для этого необходимо:

Создать директорию

Войти под пользователем root. Необходимо создать директорию php в /usr/local/directadmin/data/users/user/:

и положить в нее файл php.ini:

Путь к файлу php.ini, будет иметь такой вид:

В секции, где описан пользователь user, нужно добавить такую строчку:

Перезапуск Apache

Для применения настроек необходим перезапуск Apache:

Также есть возможность перечитать директивы без перезапуска веб-сервера:

WHM/cPanel

Максимальный размер загружаемого файла PHP в WHM

Webuzo

1. Необходимо зайти в раздел Enduser Panel и перейти в меню Configuration > PHP.

Меню Configuration в Webuzo

2. Редактируем значения параметров post_max_size и upload_max_filesize, после чего сохраняем изменения, нажав кнопку «Save».

В конфигурационном файле php.ini с помощью директивы upload_max_filesize установлен максимальный размер загружаемых файлов на сервер. Если у вас есть доступ к файлу php.ini на вашей хостинг-площадке, вы можете изменить это значение:

Учтите, что в PHP так же установлен максимальный размер POST запросов с помощью директивы post_max_size , который должен быть больше или равен максимальному размеру загружаемых файлов:

В зависимости от конфигурации сервера, новые значения могут вступить в силу сразу после внесения изменений, или же потребуется перезапустить веб-сервер или PHP интерпретатор.

Директивы PHP через .htaccess

Если у вас нет доступа к файлу конфигурации PHP, вы можете попробовать установить значения с помощью файла .htaccess веб-сервера Apache. Если вы работаете с Apache, то в корневой директории с вашим сайтом WordPress наверняка уже есть файл .htaccess, в который вы можете добавить следующие значения:

Изменения в файлы .htaccess как правило вступают в силу сразу после сохранения.

Директивы PHP через nginx.conf

Для веб-сервера nginx к сожалению нет возможности использовать файл .htaccess, но если вы ищите возможность изменять значения php.ini с помощью конфигурационного файла nginx, это делается через директиву fastcgi_param (в случае если PHP настроен как FastCGI клиент):

С помощью функции ini_set()

Директивы upload_max_filesize и post_max_size можно так же изменить с помощью PHP функции ini_set() в файле wp-config.php или с помощью плагина, если это разрешено в настройке интерпретатора:

Фильтр upload_size_limit

В WordPress есть специальный фильтр upload_size_limit используемый в функции wp_max_upload_size() . Этот фильтр отвечает за максимальный размер загружаемых файлов. Значение по умолчанию — наименьшее из upload_max_filesize и post_max_size из файла php.ini, и использовать данный фильтр, можно только в пределах этого значения.

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

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

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

Как Увеличить Максимальный Размер Загружаемого Файла в WordPress

Однако стоит отметить, что медиа загрузчик использует PHP для загрузки файлов на сервер и, к сожалению, имеет лимит на максимальный размер загружаемого файла. Вы можете проверить максимальный размер файла в WordPress зайдя в Панель администратора→ Медиафайлы→ кнопка Добавить новый.

wodpress файлы

максимальный размер загружаемого файла в wordpress

Существует несколько способов для увеличения максимального размера загружаемого файла в WordPress. Мы расскажем о них в этом руководстве.

Что вам понадобится

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

  • Доступ к панели управления хостингом
  • Доступ к панели администратора WordPress

Вариант 1 — Увеличение максимального размера загружаемых файлов в .htaccess

Многие провайдеры услуг хостинга позволяют менять различные PHP настройки через файл .htaccess. Таким образом, применив правило php_value upload_max_filesize в файле .htaccess вы можете увеличить максимальный размер файлов для загрузки.

Как только расположение файла .htaccess определено, выберите его и нажмите кнопку Редактировать.

wodpress htaccess

Вам необходимо добавить следующий код в конец файла:

Как только вы закончите, сохраните изменения нажав на иконку Сохранить в левом верхнем углу.

wodpress htaccess сохранить

Вариант 2 — Настройка файла php.ini

ВАЖНО! Этот метод наиболее полезен, если ваш сайт WordPress находится на сервере VPS. Многие из провайдеров услуг виртуального хостинга не позволяют редактирование файла php.ini. Если вы используете виртуальный хостинг, свяжитесь с командой поддержки вашего хостинга для уточнения данной информации.


Если вариант с редактированием файла .htaccess для вас не работает, вы можете попытаться увеличить максимальный размер загружаемого файла в WordPress, отредактировав файл php.ini. Войдите в Файловый Менеджер, FTP-клиент или даже SSH (если он поддерживается) и найдите файл php.ini в корневом каталоге. Если вы не видите такого файла, создайте его и впишите следующие правила:

Как только вы закончите, сохраните изменения и проверьте результат изменений в Панели администратора WordPress→ Медиафайлы→ кнопка Добавить новый.

Вариант 3 — Увеличение максимального размера загружаемого файла в cPanel

Если ваш провайдер услуг хостинга использует cPanel и позволяет изменить настройки PHP, вы сможете легко увеличить максимальный размер загружаемых файлов в WordPress:

  1. Войдите в cPanel и найдите Выбор версии PHP в разделе Программное обеспечение.

cpanel php

  1. Нажмите на Switch to PHP Options (Переключиться на опции PHP).

cpanel php 2

  1. Измените значение post_max_size и upload_max_filesize.

cpanel php 3

Вариант 4 — Изменение файла wp-config.php

Не волнуйтесь, если методы описанные выше для вас не работают. Еще одним путем для увеличения максимального размера загружаемого файла в WordPress, является изменение лимита памяти. Для этого добавьте следующий код в файл wp-config.php:

Войдите в Файловый Менеджер или FTP-клиент, найдите файл wp-config.php и добавьте код выше в конец файла. После того, как вы закончите, wp-config.php должен выглядеть вот так:

wp config

Заключение

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

Читайте также: