Наиболее распространенные ошибки
Опция MAX_FILE_SIZE не должна позволять передачу файлов,
размер которых превышает лимит, установленный конфигурационной директивой
upload_max_filesize.
Ограничение по умолчанию составляет 2 мегабайта.
В случае, если установлено ограничения памяти, вам может понадобиться
увеличить значение опции memory_limit.
Убедитесь в том, что значение memory_limit
достаточно велико.
В случае, если опция max_execution_time
установлена слишком маленьким значением, необходимое время работы скрипта
может превышать это значение. Убедитесь в том, что значение
max_execution_time достаточно велико.
Замечание:
Директива max_execution_time only
касается исключительно времени, используемого непосредственно самим скриптом.
Время, потраченное на внешние действия, такие как системные
вызовы при помощи функции system() или
sleep(), обращения к базе данных, а также
время, потраченное на загрузку файла и другие действия, происходящие
вне скрипта, не учитываются при определении максимально допустимого
промежутка времени, отведенного для выполнения скрипта.
Внимание
Директива max_input_time указывает
максимально допустимое время в секундах для получения входящих данных,
в том числе и загружаемых файлов. В случае, если вы имеете дело с несколькими
или большими файлами, либо удаленные пользователи используют медленный
канал, ограничение по умолчанию в 60 секунд может быть превышено.
Если директива post_max_size
установлена слишком маленьким значением, большие файлы не смогут быть
загружены на сервер. Убедитесь, что значение директивы
post_max_size достаточно велико.
Если не проверять, с какими файлами вы работаете, пользователи могут
получить доступ к конфиденциальной информации, расположенной в других
директориях.
Следут заметить, что CERN httpd может отсечь все, что идет после первого
пробела в получаемом от клиента заголовке content-type. Если у вас именно
такой случай, CERN httpd не будет поддерживать возможность загрузки файлов.
Поскольку разные системы по-разному работают с файловой структурой,
у вас нет никаких гарантий того, что файлы с экзотическими именами
(например, которые содержат пробельные символы) будут обработаны корректно.
Разработчики не должны использовать одинаковые имена для полей ввода и полей
выбора файла в пределах одной и той же формы (например, используя имя
вида foo[]).