2010-09-24 16 views
1

Je suis en train de créer un formulaire HTML avec lequel l'utilisateur devrait être en mesure de télécharger de gros fichiers jusqu'à ~ 100 Mo.Meilleures pratiques pour le téléchargement de gros fichiers sur le Web avec l'amélioration progressive

Mes utilisateurs pourraient venir de n'importe où donc je ne peux pas compter sur une connexion à large bande, un navigateur moderne ou la disponibilité de Javascript/Flash. Pour les utilisateurs qui ont ces "extras", je voudrais offrir une meilleure expérience comme une forme de feedback sur le processus et un formulaire flexible.

La seule chose que je peux penser à ce qui peut mal se passer est un délai d'expiration du serveur. Mais comme je n'ai jamais construit de fonctionnalité comme celle-ci J'aimerais savoir quelles sont les meilleures pratiques d'autres personnes et les problèmes les plus sérieux dans ce domaine sont.

Pas tout à fait pertinent mais le backend est en PHP.

Répondre

1

Si votre backend est PHP, vous devez, entre autres choses, regarder upload_max_filesize. La plupart des problèmes de configuration sont couverts here. Faire en sorte que votre application vérifie et agisse sur les paramètres de l'environnement d'exécution est également une bonne idée car cela augmente la tolérance aux pannes. L'utilisation de Flash sur le frontal est quelque chose que je ne recommanderais pas car il a tendance à échouer avec des fichiers volumineux. Et sans Javascript, les retours de processus ne sont pas possibles du tout sauf pour les fonctionnalités intégrées d'un navigateur. La meilleure expérience que vous pouvez offrir sans Javascript est de placer le formulaire de téléchargement de fichier dans un iframe afin que la page contenant ne disparaisse pas pendant le téléchargement.

Pour les scénarios normaux utilisant une combinaison d'APC et léger AJAX est un bon choix. Le site Web IBM a un implementation walkthrough sur le sujet.