2010-08-30 11 views
5

Quando stavo utilizzando AsyncFileUpload per caricare un'immagine da 100 KB, non ho ricevuto alcun messaggio di errore., Ma l'immagine non è stata caricata. Posso caricare con successo un'immagine da 75KB. Sto usando IIS 6.0.AsyncFileScarica limite dimensioni file

<cc1:AsyncFileUpload ID="afuImg" Width="400px" runat="server" 
UploaderStyle="Traditional" ThrobberID="Throbber2" 
    OnClientUploadError="uploadErrorImg" 
    OnClientUploadStarted="StartUploadImg" 
    OnClientUploadComplete="UploadCompleteImg" /> 

<httpRuntime maxRequestLength = "1024000" 
executionTimeout="54000" 
enableHeaderChecking ="false" /> 
+0

vuoi riorganizzare le dimensioni del file? usa sime uploader e provalo Umair

+0

Umair

risposta

0

Quando si cerca di caricare i file su 200KB su IIS 6 il file non può mai caricare e si sia un errore o vengono inviati ad una schermata vuota. Per impostazione predefinita, il server Windows limita i caricamenti di file a circa 200 KB di dimensioni. Per superare questo limite è necessario modificare il file metabase.xml di IIS.

1.Prima di modificare il file metabase.xml, è necessario specificare a IIS di consentire la modifica del file. In IIS, fare clic con il tasto destro del mouse sul nome del server e selezionare Proprietà. Seleziona "Abilita modifica diretta metabase".

2.Trova il file metabase.xml che si trova in C: \ windows \ sytem32 \ inetserv e apri il file in Blocco note.

3. Ricerca per AspMaxRequestEntityAllowed e aumentare il valore. Il valore predefinito è 204800 (200K). L'impostazione del valore su 1000000 consentirà il caricamento di 1 MB di file.

4.È ora possibile deselezionare la proprietà IIS denominata "Abilita modifica diretta metabase".

Per aumentare il limite della dimensione di download del file, ripetere tutti i passaggi precedenti ma al passaggio 3 individuare il parametro denominato AspBufferingLimit. Il limite di download predefinito è 4 MB.

5

È possibile caricare file con una dimensione combinata fino a 2 GB, ma richiede alcune modifiche nei file di configurazione dell'applicazione.

  • set maxRequestLength in httpRuntime a 1,024 miliardi (2GB massimo, hai fatto questo)
  • Specifica il numero massimo di secondi che una richiesta è consentito di eseguire, prima di essere interrotto automaticamente da ASP. NETTO. Il valore di questa impostazione viene ignorato in modalità di debug. Il valore predefinito in .NET Framework 2.0 è 110 secondi. Per abilitare i caricamenti di file di grandi dimensioni, che possono richiedere lunghi periodi di tempo, aumentare questa proprietà. Vedere il seguente articolo MSDN: http://msdn2.microsoft.com/en-us/library/e1f13641.aspx.
  • Aprire il file C: \ Windows \ System32 \ inetsrv \ config \ applicationHost.config e trovare la linea:

    <section name="requestFiltering" overrideModeDefault="Deny" /> 
    
  • Impostare la proprietà overrideModeDefault a Consentire.
  • I seguenti attributi possono essere assegnati nell'elemento del file machine.config. Devono essere impostati a livello macchina, non a livello dell'applicazione in web.config.
  • responseDeadlockInterval - Specifica l'intervallo di tempo, nel formato HH: MM: SS, dopo il quale il processo viene riavviato se non c'è stata una risposta durante questo intervallo. L'impostazione predefinita è 3 minuti. Per consentire caricamenti molto grandi, potresti dover aumentare questo valore.
  • responseRestartDeadlockInterval - Specifica l'ora, nel formato HH: MM: SS, che deve trascorrere dopo l'ultimo riavvio per correggere un deadlock prima che il processo venga riavviato per correggere nuovamente un deadlock. Per consentire caricamenti molto grandi, potresti dover aumentare questo valore.
  • AspMaxRequestEntityAllowed - A volte quando l'applicazione è ospitata su Windows Server 2003, le impostazioni precedenti non sembrano avere effetto. In questo caso è necessario modificare il file di metadati di IIS, in particolare la proprietà AspMaxRequestEntityAllowed. Per maggiori informazioni visita: http://www.telerik.com/support/kb/article/b454K-gth-b454T-cee.aspx

Infine Anche se io non lo vedo molto spesso

  • Se c'è qualche software di monitoraggio di rete di terze parti è necessario assicurarsi che sia correttamente configurato per consentire il caricamento di file con la lunghezza e il contenuto necessari.

c'è anche un'altra domanda su StackOverflow, che va in questo How do I configure IIS to handle really large file uploads?

Nella domanda la risposta https://stackoverflow.com/a/206796/728841 elenca Urlscan causa dei problemi che ha il proprio limite di lunghezza richiesta entità sopra. La persona non sapeva che Urlscan era in esecuzione sul server perché era un filtro ISAPI globale, non in esecuzione sul singolo sito Web.

Nota: per individuare i filtri ISAPI globali, fare clic con il pulsante destro del mouse sulla cartella Siti Web in Amministrazione di IIS e fare clic su Proprietà, quindi sulla scheda Filtri ISAPI.

Problemi correlati