У меня есть простой страничный сайт на PHP, где пользователи могут загружать файлы (stl-модель). Сначала я использовал для загрузки JS FormData
. Это работает в Chrome и Firefox, но Safari iOS иногда отправляет файл с размером = 0 байт. JS console.log показывает, что размер файла 718120 байт перед отправкой. PHP режим отладки показывает, что глобальный $ _FILE
существует и имя файла истинно, но файл пуст:
(
[name] => TRRSExtenderMount.stl
[type] => application / octet-stream
[tmp_name] => / tmp / phphDceFc
[error] => 0
[size] => 0
)
Время от времени повторяется ошибка с размером 0.
Что Я пробовал:
- проверено phpinfo post_max_size, upload_max_filesize
- протестировано на разных устройствах (все с 13.3.1 iOS)
- протестировано с разными stl-файлами и размер файла (от 0,5 МБ до 16 МБ)
- протестировано с 3g, 4g и Wi-Fi
- проверено медленная скорость загрузки: проверьте размер файла, подождите 10 секунд и проверьте снова
- изменена форма ввода для стандартного HTML с методом POST без JS
Но ошибка повторилась снова. Что я делаю не так?