Отправляет email-рассылки с помощью сервиса Sendsay

Заметки Web-программиста

  Все выпуски  

Заметки Web-программиста Максимальный размер загружаемого файла


Данная статья была только что опубликована на сайте Заметки Web-программиста

Итак, в локальной сети имеется сервер LAMP (Linux+Apache+Mysql+Php), не видимый из интернет, на котором работает CMS Moodle. Потребовалось увеличить максимальный размер загружаемого файла. Пользователям оказалось мало 2мб стоящих по умолчанию, нужно 50.
Проблема оказалась не то, чтобы очень сложной, но неочевидной. Зависящая уже не от свойств данной CMS, а от настроек apache и php.

Итак, что мне пришлось сделать?
Залез в админку, нашел параметр "Maximum uploaded file size" в выпадающем списке максимально допустимый выбор 5Мбайт. И ниже подсказка:

"Этот параметр определяет максимальный размер загружаемых на сайт внешних файлов. Этот параметр в свою очередь ограничен настройками в PHP - setting upload_max_filesize и в Apache - LimitRequestBody."

Получилось, что мне даже думать не пришлось. Всё уже на блюдечке аккуратно разложено - кушайте на здоровье!
Я прописал в .htaccess строку:
php_value upload_max_filesize 50M

Вывод функции phpinfo() показывал, то что надо: Local Value (в данном каталоге) 50 Mb, Master Value (глобально в PHP) - 10Mb. В принципе должно работать, но не работало. Больше 10 мегабайт загружаться нехотело. Прописал еще в php.ini 50mb - результат тот же.
Взялся за Apache и написал
LimitRequestBody 52428800

не помогло.
Делал ещё некоторые вещи, но результат был один - нулевой.

Результатом моих мучений было внимательное изучение php.ini, которое и привело к тому, что я наткнулся на такую строку

post_max_size = 10M

На меня снизошло озарение. Поскольку, файл загружается по методу post то для отправки данных по этому методу, максимальный размер данных отправляемых по этому методу должен быть не меньше размера загружаемого файла. Чтобы этот файл можно было в этих данных разместить.
В общем как только я добавил в .htaccess
php_value post_max_size 50M

всё заработало.
Вот такая история!

В избранное