Comment puis-je configurer IIS pour gérer vraiment les téléchargements de gros fichiers?
Plate-forme: IIS 6, ASP.Net 2.0 (.Net 3.5), Server 2003.
Je suis en train de construire une application qui accepte les fichiers d'un utilisateur, les processus, et renvoie un résultat. Le fichier est téléchargé par HTTP POST à un ASP.Net un formulaire web. L'application attend des fichiers de grande taille (plusieurs centaines de MO).
Je suis en utilisant SWFUpload pour accomplir le charger avec une belle barre de progression, mais qui ne contribuent pas à la question, parce que quand je le contourner à l'aide d'un formulaire HTML pointant mes upload accepter de page, j'obtiens exactement la même erreur. Lors de l'utilisation de la barre de progression, le téléchargement se poursuit à 100%, puis échoue. Un formulaire standard, le problème semble être le même.
Je vais avoir un problème de droit maintenant le téléchargement d'un fichier, c'est environ 150 MO. J'ai changé tous les paramètres que je peux trouver, mais toujours pas de chance.
Voici un résumé de ce que j'ai changé jusqu'à présent:
Dans Le Web.config:
Ajouté ceci à l'intérieur du système.web:
<httpRuntime executionTimeout="3600" maxRequestLength="1536000"/>
Dans la machine.config:
À l'intérieur du système.web, changé:
<processModel autoConfig="true" />
:
<processModel autoConfig="true" responseDeadlockInterval="00:30:00" responseRestartDeadlockInterval="00:30:00" />
et dans MetaBase.xml:
Modifié:
AspMaxRequestEntityAllowed="204800"
:
AspMaxRequestEntityAllowed="200000000"
Lorsque le téléchargement échoue, j'ai une erreur 404 à partir de IIS. Mon formulaire web ne pas commencer le traitement, ou au moins, elle n'est pas dans l'événement Page_Load. J'ai jeté une exception au début de ce gestionnaire, et il n'exécute pas du tout sur de gros fichiers.
Tout fonctionne bien avec des fichiers plus petits (j'ai testé jusqu'à environ 5,5 MO). Je ne suis pas exactement sûr de ce que la taille du fichier est la limite, mais je sais que ma limite doit être supérieure à 150 MO, puisque ce n'est pas le plus gros fichier que le client aura besoin de télécharger.
Peut aider quelqu'un?
OriginalL'auteur Chris Weisel | 2008-10-15
Vous devez vous connecter pour publier un commentaire.
Urlscan est actif sur tous les sites web, et a sa propre entité de la requête limite de longueur. Je n'étais pas au courant qu'Il était en cours d'exécution sur notre serveur, car c'était un mondial filtre ISAPI, ne fonctionne pas sur mon site web individuel.
Remarque: pour localiser global des filtres ISAPI, clic droit sur le dossier Sites Web dans IIS Admin et cliquez sur Propriétés, puis sur l'onglet Filtres ISAPI.
OriginalL'auteur Chris Weisel
Quand nous sommes tombés sur cette question, nous avons dû augmenter la taille de la mémoire tampon de limite selon le présent article:
http://support.microsoft.com/kb/944886/en-us
Je sais que c'mentionne l'ASP, mais je crois qu'il a travaillé pour ASP.NET ainsi.
Edit: Voici un lien qui pourrait être plus pertinentes à votre problème et de fournir d'autres options:
http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx
Ouais je l'ai re-lu votre question et réalisé mon premier lien est incorrect, mais je me sentais bizarre juste de les prendre tous. Alors j'ai regardé dans un peu plus loin et a affiché le deuxième lien comme une modification. J'espère que le deuxième lien aidé.
OriginalL'auteur Chris Roland
(Une note par les googlers):
Pour IIS7 ajouter ci-dessous pour web.config (j'ai ajouté ci-dessus
<system.serviceModel>
):OriginalL'auteur Manish Jain
404 et manquant Page_Load: IIS ne peut traiter la demande une fois le message complet est sur le serveur. Par conséquent, si la POSTE ne parvient pas (à cause de sa taille), il ne peut pas tirer de la page événements.
Vous pouvez essayer de NeatUpload http://www.brettle.com/neatupload.
Dans le Manuel: "Par défaut, NeatUpload ne prend pas directement en limiter la taille des uploads."
OriginalL'auteur devio
Vous pouvez également essayer Velodoc XP Édition qui a plusieurs avantages par rapport à NeatUpload y compris le fait qu'il utilise ASP.NET Ajax extensions. Voir aussi le Velodoc site web pour plus d'informations.
OriginalL'auteur
Vous dire:
Mais 1536000 est à seulement 1,5 MO?
OriginalL'auteur Ewan Makepeace