Я использую скрипт здесь от w3school для загрузки файлов на веб-сервер. Я использую Google Chrome, идущий на сервер Apache с php7.
Когда я загружаю файл с рабочего стола Windows, скрипт работает так, как объявлено, и файл загружается. Однако, когда я пытаюсь загрузить файл из любой другой папки, переменная $_FILES
либо отсутствует, либо ее значения пусты ( На самом деле это проблема размера, см. Правку ниже ). Я не уверен, как решить эту проблему, поскольку devtools в chrome, похоже, не дают мне никакой информации о том, что он отправляет в этом сообщении POST.
Я предполагаю, что проблема на стороне клиента, так как кажется, что сервер не получает информацию от клиента.
EDIT
Мне известно, как искать заголовки для запросов, и ничего о файле, кроме его длины содержимого, не включено в заголовок. Нет разницы между работающими заголовками и заголовками, за исключением содержимого boundary
, которое выглядит случайным, и заголовка content-length
, который, очевидно, изменяется в зависимости от размера файла.
У меня была мысль, что это связано с размером файла, и это так. У меня есть папка с фотографиями разных размеров, и я сортировал и загружал все более крупные файлы, пока это не удалось. Он работал нормально до примерно 8 МБ файлов и дает сбой, когда их размер превышает 8 200 КБ.
Я проверил php.ini и установил максимальный размер загрузки 150M, так что это не INI-файл. Я также проверяю все журналы, и ничего, кроме запроса на публикацию, не появляется, когда я пытаюсь загрузить файл.