Как увеличить ограничение размера загрузки файла PHP
Если у вас есть веб-приложение, которое загружает файлы на сервер с помощью сценария PHP, вы могли заметить, что по умолчанию вы не можете загружать ужасно большие файлы. Вот как это изменить.
Причина, по которой ограничение установлено достаточно низким по умолчанию, заключается в стабильности и безопасности - злонамеренный скрипт или злоумышленник может попытаться сделать DoS-сервер с большими загрузками файлов и временно закрыть ваше приложение..
Чтобы изменить значения, вам нужно отредактировать файл php.ini, который обычно находится по этому пути:
/etc/php.ini
Вот настройки, которые вы хотите изменить:
post_max_size
Этот параметр управляет размером сообщения HTTP, и его необходимо установить больше, чем параметр upload_max_filesize..
upload_max_filesize
Это значение устанавливает максимальный размер загружаемого файла..
memory_limit
Вы должны убедиться, что лимит памяти вашего скрипта установлен на приличный размер, возможно, больше, чем любой из двух других параметров.
Установка переменных
Вы можете установить значения, используя числовое значение, за которым следует M для количества МБ, которое вы хотите выделить для каждой переменной. Например, чтобы разрешить загрузку файлов размером 20 МБ, вы должны использовать что-то вроде этого:
memory_limit = 64M
upload_max_filesize = 20M
post_max_size = 25 миллионов
Вам нужно будет перезапустить сервер Apache, как только вы внесете это изменение, с помощью этой команды:
/etc/init.d/httpd restart
Установка размера загрузки для приложения
Вы можете внести изменения в этот параметр для определенного веб-приложения, поместив его вместо этого в файл .htaccess, в каталог приложения. Обратите внимание, что это будет работать, только если ваш сервер включил переопределения для вашего виртуального хоста или сервера.
Например, вы можете поместить в файл следующее:
php_value memory_limit = 64M
php_value upload_max_filesize = 20 миллионов
php_value post_max_size = 25 миллионов
После сохранения файла изменения должны быть применены..