php.ini размер загружаемого файла

php.ini — файл в котором определяются настройки PHP, которые будут использоваться при выполнении скриптов. php.ini может быть один и существовать только на уровне сервера или, что применяется на виртуальном хостинге, может существовать отдельный файл php.ini для каждого пользователя или каждого сайта.

 

Стандартный файл php.ini выглядит чаще всего примерно следующим образом:

  • memory_limit = 32M
  • max_execution_time = 60
  • max_input_time = 60
  • upload_max_filesize = 128M
  • post_max_size = 128M
  • magic_quotes_gpc = Off
  • magic_quotes_runtime = Off
  • magic_quotes_sybase = Off
  • mail.log = /home/u55185/log/sendmail.log
  • expose_php = Off
  • date timezone=Asia/Yekaterinburg

 

Важными параметрами является значение директивы, определяющей временную зону, а также memory_limit — ограничение памяти для процессов не стоит задавать слишком большим, это повлечет выделение излишка памяти РНР, остальным же процессам ресурсов сервера при этом может не хватать.

 

Хорошей практикой является установка memory_limit минимальным возможным (увеличивать значение стоит маленькими шагами при появлении в логах записей вида PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4104 bytes))

 

 

 

php.ini размер загружаемых файлов

Максимальный размер загружаемого файла определяется директивой upload_max_filesize и задается в мегабайтах. Типовые значения для небольших сайтов 4-256 Мб. Для популярных ресурсов может быть значительно больше.

 

Изменения, внесенные в php.ini в любом случае вступают в силу после окончания времени жизни процесса, задаваемого max_execution_time или при выполнении в консоли команды pkill php.

 

 

Стоит иметь в виду, что upload_max_filesize задает ограничение на уровне РНР. также определенные ограничения существуют на уровне веб-сервера, они задаются в конфигурационных файлах — если файлы нужного размера не загружаются — в большинстве случаев, следует проверить конфиги Nginx и Apache.

 

Для Nginx в логах часто можно обнаружить ошибки Client intended to send too large body, которые устраняются увеличением лимитов в конфигурационных файлах.

Запись опубликована автором в рубрике PHP.