По умолчанию PHP допускает максимальную загрузку файла 2 МБ. Вы можете попросить пользователей изменить размер изображений перед загрузкой, но давайте посмотрим правде в глаза: они не будут. К счастью, мы можем увеличить предел, когда это необходимо.
Два варианта конфигурации PHP управляют максимальным размером загрузки: upload_max_filesize и post_max_size. Оба могут быть установлены, например, «10M» для размеров файлов размером 10 мегабайт.
Однако вам также необходимо учитывать время, необходимое для завершения загрузки. PHP-скрипты обычно тайм-аут через 30 секунд, но для 10-мегабайтного файла потребуется не менее 3 минут для загрузки на здоровое широкополосное соединение (помните, что скорость загрузки обычно в пять раз медленнее, чем скорость загрузки). Кроме того, манипулирование или сохранение загруженного изображения также может вызывать тайм-ауты сценария. Поэтому нам нужно установить max_input_time и max_execution_time PHP примерно на 300 (5 минут, указанных в секундах).
Эти параметры могут быть установлены в файле конфигурации php.ini вашего сервера, чтобы они применимы ко всем вашим приложениям. С другой стороны, если вы используете Apache, вы можете настроить параметры в файле .htaccess вашего приложения:
php_value upload_max_filesize 10М
php_value post_max_size 10М
php_value max_input_time 300
php_value max_execution_time 300
Не могли бы вы рассказать мне, что мне нужно написать в моем htaccess файле, чтобы увеличить все ограничения –
, вы можете определить ограничения в своем приложении PHP : ini_set ('upload_max_filesize', '10M'); ini_set ('post_max_size', '10M'); ini_set ('max_input_time', 300); ini_set ('max_execution_time', 300); PHP также предоставляет функцию set_time_limit(), поэтому вам не нужно устанавливать max_execution_time напрямую. Настройка параметров в вашем PHP-коде возможно более практична, поскольку вы можете продлить время выполнения и увеличить размер файла, когда ваше приложение ожидает большой загрузки. Другие формы вернутся к 30-секундному тайм-ауту по умолчанию и ограничению 2 МБ. –
Процесс загрузки не учитывается во время выполнения PHP. –