Заливка больших файлов на сайт
Материал из Документация NGCMS
Довольно часто на сайте задают вопрос - "Как залить через WEB интерфейс файл размером XXX Mb? При попытках это сделать возникают какие-то ошибки." Если вы столкнулись с аналогичной проблемой, то данная статья именно для вас.
Для решения этого вопроса Вам не помешает знать логику наложения ограничений при заливке больших объёмов данных при использовании PHP вообще и NGcms в частности. Последовательность такая:
- [на уровне PHP]: Проверка переменной POST_MAX_SIZE - она определяет максимальный объём данных, которые разрешено передавать через метод POST. Любая информация, превышающая 200-500 байт, передаваемая от клиента на сервер, передаётся при использвании метода POST протокола HTTP.
Причём файлы вне зависимости от их размера передаются только через этот метод. - [на уровне PHP]: Проверка переменной UPLOAD_MAX_FILESIZE - определяет максимальный объём файла, который разрешено загружать.
- [на уровне NGcms]: Проверка максимального объёма файла/изображения, ограничение прописывается в разделе "настройки" => "настройки системы" => "изображения"/"файлы".
Все проверки идут по порядку. При этом, если заливаемый файл превышает ограничения PHP, то вы получите сообщение об ошибке с информацией что заливаемый файл не найден.
Вот так можно увеличить на уровне PHP ограничение на размер закачиваемого файла до 10Mb (строки пропсиываются в .htaccess файле в корне сайта):
php_flag post_max_size 30m php_flag upload_max_filesize 30m

