Recibo el error Se excedió la longitud máxima de la solicitud cuando intento cargar un video en mi sitio.
¿Cómo puedo solucionar esto?
asp.net
iis
file-upload
Surya sasidhar
fuente
fuente
Web.config
lugar de la que está dentro de laViews
carpetaNo creo que se haya mencionado aquí, pero para que esto funcione, tuve que proporcionar ambos valores en la web.config:
En
system.web
Y en
system.webServer
IMPORTANTE : Ambos valores deben coincidir. En este caso, mi carga máxima es de 1024 megabytes.
maxRequestLength tiene 1048576 KILOBYTES , y maxAllowedContentLength tiene 1073741824 BYTES .
Sé que es obvio, pero es fácil pasarlo por alto.
fuente
web.config
archivo raíz del proyecto .Vale la pena señalar que es posible que desee limitar este cambio a la URL que espera utilizar para la carga en lugar de todo su sitio.
fuente
Y en caso de que alguien esté buscando una manera de manejar esta excepción y mostrar una explicación significativa al usuario (algo como "Estás cargando un archivo que es demasiado grande"):
(Se requiere ASP.NET 4 o posterior)
fuente
HttpContext.Current.ClearError()
era necesario para permitirResponse.Redirect()
que funcione correctamente. En términos deweb.config
funciona solo con elmaxRequestLength
atributo dehttpRuntime
.onchange
evento en el botón de carga y comparando el tamaño del archivo de carga con el límite máximo de carga.El tamaño máximo de la solicitud es, por defecto,
4MB (4096 KB)
Esto se explica aquí .
El artículo anterior también explica cómo solucionar este problema :)
fuente
Si no puede actualizar los archivos de configuración pero controla el código que maneja el uso de carga de archivos
HttpContext.Current.Request.GetBufferlessInputStream(true)
.El
true
valor deldisableMaxRequestLength
parámetro le dice al marco que ignore los límites de solicitud configurados.Para obtener una descripción detallada, visite https://msdn.microsoft.com/en-us/library/hh195568(v=vs.110).aspx
fuente
Hay un elemento en web.config para configurar el tamaño máximo del archivo cargado:
fuente
Para resumir todas las respuestas en un solo lugar:
Reglas:
Notas:
más información MSDN
fuente
maxRequestLength (longitud en KB) Aquí como ej. Tomé 1024 (1 MB) maxAllowedContentLength (longitud en bytes) debería ser el mismo que su maxRequestLength (1048576 bytes = 1 MB).
fuente
También me molestó durante días. Modifiqué el archivo Web.config pero no funcionó. Resultó que hay dos archivos Web.config en mi proyecto, y debería modificar uno en el directorio ROOT , no los otros. Espero que esto sea útil.
fuente
Si tiene una solicitud que va a una aplicación en el sitio, asegúrese de configurar maxRequestLength en la raíz web.config. Parece que se ignora maxRequestLength en el archivo web.config de la aplicación.
fuente
httpRuntime maxRequestLength="###
yrequestLimits maxAllowedContentLength
en un web.config en la raíz, no en el nivel sub-aplicación.Me tropecé con el hecho de que nuestro archivo web.config tiene múltiples secciones system.web: funcionó cuando agregué <httpRuntime maxRequestLength = "1048576" /> a la sección system.web que en el nivel de configuración.
fuente
Tuve que editar el
C:\Windows\System32\inetsrv\config\applicationHost.config
archivo y agregarlo<requestLimits maxAllowedContentLength="1073741824" />
al final del ...sección.
Según este artículo de soporte de Microsoft
fuente
applicationHost.config
.Puedo agregar a la configuración web sin compilar
fuente
executionTimeout
atributo no tiene nada que ver con lo que se solicita, y tampoco lacompilation
etiqueta.