Изменение лимита загрузки в php - PullRequest
1 голос
/ 13 октября 2008

Я разрабатываю CMS, где клиентам нужно будет загружать файлы размером более 2 МБ - до 10 МБ как минимум. Я изменил детали в файле php.ini и больше нигде не вижу, что проблема может быть. Любая помощь?

Приветствия

Ответы [ 5 ]

8 голосов
/ 13 октября 2008

Вот что я рекомендую изменить (при условии Apache & PHP):

Я обнаружил, что это хорошо работает для вложений размером до 30 МБ

Настройки PHP

  • max _execution _time = 120
  • max _input _time = 120
  • memory_limit = 30M
  • post _max _size = 30M
  • загрузить _max _filesize 30M
  • file_uploads = Вкл. (хотя, похоже, у вас уже есть это)

Настройки Apache

  • LimitRequestBody 31457280
2 голосов
/ 13 октября 2008

В вашем php.ini:

; Maximum allowed size for uploaded files.
upload_max_filesize = 50M

; Maximum size of POST data that PHP will accept.
post_max_size = 50M

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

Вы можете установить более высокий предел памяти для этого конкретного сценария, включив в него следующую строку:

ini_set("memory_limit","75M");
2 голосов
/ 13 октября 2008

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

0 голосов
/ 13 октября 2008

Убедитесь, что вы изменили upload_max_filesize И post_max_size

0 голосов
/ 13 октября 2008

Пока вы перезапускаете свой веб-сервис (то есть apache), изменения должны вступить в силу, однако, если вы разрабатываете для кого-то другого, а не для себя, тогда вместо изменения php.ini я бы добавил это в скрипт загрузки:

ini_set('upload_max_filesize', '10M');

, поскольку некоторые люди могут не иметь возможности изменять php.ini, это изменит его только для страницы, на которой он находится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...