Лучшие практики загрузки больших файлов в Интернет с прогрессивным улучшением

StackOverflow https://stackoverflow.com/questions/3785420

Вопрос

Я создаю HTML-форму, с помощью которой пользователь сможет загружать большие файлы размером до ~ 100 МБ.

Мои пользователи могут быть откуда угодно, поэтому я не могу рассчитывать на широкополосное соединение, современный браузер или наличие Javascript/Flash.Для пользователей, у которых есть эти «дополнительные возможности», я хотел бы предложить лучший опыт, например, некоторую форму обратной связи о процессе и гибкую форму.

Единственное, что, по моему мнению, может пойти не так, это тайм-аут сервера.Но поскольку я никогда не создавал такую ​​функциональность Я хотел бы знать, каковы лучшие практики других людей и наиболее серьезные проблемы в этой области..

Не совсем актуально, но серверная часть написана на PHP.

Это было полезно?

Решение

Если ваш бэкэнд — PHP, то, среди прочего, вам нужно посмотреть upload_max_filesize.Большинство проблем с конфигурацией покрыты здесь.Заставить ваше приложение проверять параметры среды выполнения и действовать в соответствии с ними также является хорошей идеей, поскольку это повышает отказоустойчивость.

Я бы не рекомендовал использовать Flash во внешнем интерфейсе, поскольку он имеет тенденцию давать сбой при работе с большими файлами.А без Javascript обратная связь процесса вообще невозможна, за исключением встроенных функций браузера.Лучшее, что вы можете обеспечить без Javascript, — это поместить форму загрузки файла в iframe, чтобы содержащая страница не исчезла во время загрузки.

Для обычных сценариев хорошим выбором будет использование комбинации APC и облегченного AJAX.На сайте IBM есть пошаговое руководство по реализации на предмет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top