Существует ли максимальный размер для загрузки файла через форму HTML? - PullRequest
0 голосов
/ 18 февраля 2020

Я хочу, чтобы пользователи на моем сайте могли загружать большие файлы (скажем, до 1 ГБ) через форму html. Что у меня пока что работает:

  <h1>Upload new File:</h1>
  <form method=post enctype=multipart/form-data>
    <input type=file name=file>
    <input type=submit value=Upload>
  </form>

Подойдет ли это для больших файлов? Или я должен использовать другой способ (учитывая, что я новичок в Webdev)? Я не могу найти ссылки на ограничение размера файла в документации html5, и нашел только способы ограничения размера файла на SO (например, Ограничение размера загрузки файла (html) вход) ).

1 Ответ

1 голос
/ 18 февраля 2020

Нет, в Html нет ограничения по размеру загрузки * тип ввода "файл" ...

Если вы хотите проверить размер загруженного файла, выполните следующие действия.

if (typeof FileReader !== "undefined") {
var Filesize = document.getElementById('fileId').files[0].size;}

Есть несколько параметров конфигурации, которые могут повлиять на загрузку файла. Эти параметры конфигурации должны быть настроены правильно, чтобы загрузка файлов работала нормально.

=> Папка, в которой сохраняются файлы, должна быть доступна для записи сценарием. Это очевидно, но может быть упущено. Папка должна быть доступна для записи сценарием, что означает, что пользователь веб-сервера (обычно www-data) должен иметь доступ для записи в папку. Так что настройте права доступа к папке. Если у вас есть доступ к оболочке, права доступа к папке можно легко обновить с помощью команды 'chmod'. Если у вас нет доступа к оболочке или у вас есть общая учетная запись хостинга, обновление разрешений для папок может быть немного сложным. Проверьте, есть ли у этой панели управления хостингом эта функция.

=> Конфигурация веб-сервера. Веб-сервер будет иметь конфигурационный параметр, который (1) разрешает / запрещает загрузку файлов (2) устанавливает ограничение на размер файла. загрузить. Вот типичные настройки, которые вы должны проверить (для PHP)

  1. memory_limit
  2. upload_max_filesize
  3. post_max_size
...