Mam formularz z wyjątkiem przesyłania plików w programie ASP.NET. Muszę zwiększyć maksymalny rozmiar wysyłania powyżej domyślnego 4 MB.
Znalazłem w niektórych miejscach odnośniki do poniższego kodu w msdn .
[ConfigurationPropertyAttribute("maxRequestLength", DefaultValue = )]
Żadne z odniesień nie opisuje, jak z niego korzystać, i próbowałem kilku rzeczy bezskutecznie. Chcę zmodyfikować ten atrybut tylko dla niektórych stron, które proszą o przesłanie pliku.
Czy to właściwa trasa? I jak tego użyć?
c#
.net
asp.net
file-upload
Eddie
źródło
źródło
Odpowiedzi:
To ustawienie znajduje się w pliku web.config. Wpływa to na całą aplikację, ale ... Nie sądzę, że można ustawić ją dla każdej strony.
„xxx” jest w KB. Wartość domyślna to 4096 (= 4 MB).
źródło
W przypadku IIS 7+, a także dodając ustawienie maxRequestLength httpRuntime, należy również dodać:
Lub w IIS (7):
źródło
maxRequestLength
imaxAllowedContentLength
sprawić, by zadziałało ... patrz stackoverflow.com/questions/6327452/...Aby zwiększyć limit rozmiaru przesyłanego pliku, mamy dwa sposoby
1. IIS6 lub niższy
Przykład : jeśli chcesz ograniczyć przesyłanie do 15 MB, ustaw maxRequestLength na „15360” (15 x 1024).
2. IIS7 lub wyższy
Przykład : jeśli chcesz ograniczyć przesyłanie do 15 MB, ustaw maxRequestLength na „15360”, a maxAllowedContentLength na „15728640” (15 x 1024 x 1024).
Link referencyjny MSDN : https://msdn.microsoft.com/en-us/library/e1f13641(VS.80).aspx
źródło
Wierzę, że ta linia w pliku web.config ustawi maksymalny rozmiar wysyłania:
źródło
dla maksymalnego limitu 2 GB, w aplikacji web.config:
źródło
Jeśli jego Windows 2003 / IIS 6.0 a następnie sprawdzić AspMaxRequestEntityAllowed = "204800" w pliku MetaBase.xml znajduje się w folderze C: \ windows \ system32 \ inetsrv \
Domyślna wartość „204800” (~ 205 KB) jest moim zdaniem zbyt niska dla większości użytkowników. Po prostu zmień wartość na wartość, która Twoim zdaniem powinna być maksymalna.
Jeśli nie możesz zapisać pliku po edycji, musisz zatrzymać serwer ISS lub włączyć serwer, aby umożliwić edycję pliku:
(źródło: itmaskinen.se )
Edycja: Nie przeczytałem poprawnie pytania (jak ustawić maksymalne żądanie w webconfig). Ale ta informacja może być interesująca dla innych osób, wiele osób, które przeniosą swoje witryny z win2000-server do win2003 i miały działającą funkcję przesyłania i nagle otrzymały błąd Request.BinaryRead Failed , skorzystają z tego. Więc zostawiam odpowiedź tutaj.
źródło
Mam ten sam problem na serwerze IIS dla systemu Windows 2008. Rozwiązałem problem dodając tę konfigurację do pliku web.config:
requestLengthDiskThreshold domyślnie jest 80000 bajtów więc jest to zbyt małe dla mojej aplikacji. requestLengthDiskThreshold jest mierzony w bajtach, a maxRequestLength jest wyrażony w kilobajtach.
Problem występuje, jeśli aplikacja korzysta ze
System.Web.UI.HtmlControls.HtmlInputFile
składnika serwera. Zwiększenie requestLengthDiskThreshold jest konieczne do jego rozwiązania.źródło
Jeśli używasz Framework 4.6
źródło
Maksymalny rozmiar pliku można ograniczyć do pojedynczego kontrolera MVC lub nawet do akcji.
W tym celu można użyć znacznika web.config <location>:
Lub możesz dodać te wpisy we własnym web.config obszaru.
źródło
Wiem, że to stare pytanie.
Oto co musisz zrobić:
W pliku web.config dodaj to do
<system.web>
:i to pod
<system.webServer>
:W komentarzu widać, jak to działa. W jednym musisz sie sie w bajtach, aw drugim w kilobajtach. Mam nadzieję, że to pomaga.
źródło
Możesz napisać ten blok kodu w pliku web.config aplikacji.
Pisząc ten kod, możesz przesłać większy plik niż teraz
źródło
Jeśli używasz programu sharepoint, powinieneś również skonfigurować maksymalny rozmiar za pomocą Narzędzi administracyjnych: kb925083
źródło
Mam wpis na blogu o tym, jak zwiększyć rozmiar pliku w celu kontroli przesyłania asp .
Z postu:
źródło
Jeśli działa na komputerze lokalnym i nie działa po wdrożeniu w IIS (korzystałem z systemu Windows Server 2008 R2), mam rozwiązanie.
Otwórz IIS (inetmgr) Przejdź na swoją stronę Po prawej stronie przejdź do Treści (Filtrowanie żądań) Przejdź do Edytuj ustawienia funkcji Zmień maksymalny rozmiar zawartości jako (Wymagane bajty) To zadziała. Możesz także uzyskać pomoc, śledząc wątek http://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits
źródło
Jeśli używasz ssl cert, skonfiguruj ustawienia rurociągu ssl F5. Ważne.
źródło