NO LOGRO DESCARGAS 4MB ¿¿PROBLEMA DE IIS6??

15/01/2006 - 08:43 por Agustín Carrillo | Informe spam
Tengo una extranet que programé en ASP...Anteriormente estaba sobre windows2k
server (con IIS5 obviamente)
La migré a un Win 2003 Server (IIS6)
Tengo problemas con un script que me sirve para "forzar" la apertura del
cuadro de diálogo de las descargas.
El problema se presenta cuando descargo archivos mayores a 4MB...
concretamente son archivos de Excel 2003 generados al vuelo mediante COM
apartir de una base de datos en ACCESS 2003
QUIERO HACER NOTAR QUE YA MODIFIQUÉ EL METABASE.XML EN ASPBUFFERINGLIMIT
PONIENDOLO A 30MB en la notación correcta, y esto solo solucionó que el IIS
ya no me mandara el error 500 (que se puede ver en el log) por exceder el
tamaño del archivo AÚN ASÍ EL PROBLEMA PERSISTE...
Lo curioso es que "puedo descargar" TODOS los archivos, pero cuando el
archivo de excel que se construyó al vuelo excede los 4MB ¡¡¡¡lo descarga
en blanco con un tamaño de 0kb (cero)!!!!!
Algún MVP experimentado que pueda ayudarme????

Gracias de antemano

Preguntas similare

Leer las respuestas

#1 Mark
16/01/2006 - 14:52 | Informe spam
ese problema yo lo tuve con win2003 y lo que hice fue:


1) Para cambiarlo, para el servicio iis o bien, en las propiedades del
servidor selecciona una opción que dice "habilitar la modificación directa de
archivos de metabase".

ahora, abre la metabase, \System32\Inetsrv\MetaBase.xml, y busca la variable
AspMaxRequestEntityAllowed. Pon el valor que quieras o bien, 1073741824, que
es "ilimitado".

2) otra opcion mejor y es poner en el web.config de la aplicacion esta linea
para indicar un maximo de 55 MB por ejemplo

<system.web>
<httpRuntime maxRequestLength="55000" />
</system.web>

de esta manera no te afecta a todo el servidor y asi no te bloquean el ancho
de banda del mismo

otro para revizar
Para cargar (load) archivos XML remotos usando HTTP deberás usar el
objeto "ServerXMLHTTP"

[+info
http://msdn.microsoft.com/library/d...98b8f3.asp

Mark

Tengo una extranet que programé en ASP...Anteriormente estaba sobre windows2k
server (con IIS5 obviamente)
La migré a un Win 2003 Server (IIS6)
Tengo problemas con un script que me sirve para "forzar" la apertura del
cuadro de diálogo de las descargas.
El problema se presenta cuando descargo archivos mayores a 4MB...
concretamente son archivos de Excel 2003 generados al vuelo mediante COM
apartir de una base de datos en ACCESS 2003
QUIERO HACER NOTAR QUE YA MODIFIQUÉ EL METABASE.XML EN ASPBUFFERINGLIMIT
PONIENDOLO A 30MB en la notación correcta, y esto solo solucionó que el IIS
ya no me mandara el error 500 (que se puede ver en el log) por exceder el
tamaño del archivo AÚN ASÍ EL PROBLEMA PERSISTE...
Lo curioso es que "puedo descargar" TODOS los archivos, pero cuando el
archivo de excel que se construyó al vuelo excede los 4MB ¡¡¡¡lo descarga
en blanco con un tamaño de 0kb (cero)!!!!!
Algún MVP experimentado que pueda ayudarme????

Gracias de antemano
Respuesta Responder a este mensaje
#2 Matías Iacono
16/01/2006 - 18:26 | Informe spam
Dices que la descarga la haces forzando el popup de descarga?

Esto es, que modificas la cabecera del ASP y lo largas en forma binaria?

O tambien te pasa cuando el archivo es un archivo ya creado y solo se hace
referencia a el mediante un link?

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net
DCE3 v.2003 - DCE2 v.2005
Coordinador de evento Comunidad MSDN Bolivia
"Agustín Carrillo" <Agustín escribió en
el mensaje news:
Tengo una extranet que programé en ASP...Anteriormente estaba sobre
windows2k
server (con IIS5 obviamente)
La migré a un Win 2003 Server (IIS6)
Tengo problemas con un script que me sirve para "forzar" la apertura del
cuadro de diálogo de las descargas.
El problema se presenta cuando descargo archivos mayores a 4MB...
concretamente son archivos de Excel 2003 generados al vuelo mediante COM
apartir de una base de datos en ACCESS 2003
QUIERO HACER NOTAR QUE YA MODIFIQUÉ EL METABASE.XML EN ASPBUFFERINGLIMIT
PONIENDOLO A 30MB en la notación correcta, y esto solo solucionó que el
IIS
ya no me mandara el error 500 (que se puede ver en el log) por exceder el
tamaño del archivo AÚN ASÍ EL PROBLEMA PERSISTE...
Lo curioso es que "puedo descargar" TODOS los archivos, pero cuando el
archivo de excel que se construyó al vuelo excede los 4MB ¡¡¡¡lo
descarga
en blanco con un tamaño de 0kb (cero)!!!!!
Algún MVP experimentado que pueda ayudarme????

Gracias de antemano
Respuesta Responder a este mensaje
#3 Agustín Carrillo
16/01/2006 - 19:15 | Informe spam
Hola Matías, Mark, comunidad...
En realidad esto solo sucede con los archivos que se generan al vuelo...
tengo una carpeta donde éstos archivos se generan a manera de "temporales"
antes de ser descargados(estos se borran por la noche)y he verificado que en
el servidor si se generan realmente y con el tamaño e información correcta,
pero en la descarga bajan en 0kb.
Por otro lado tengo reportes, imágenes y PDFs que se generan por la noche en
una tarea y esos si los puedo descargar,aún cuando pasan los 4MB(70Mb o más),
pero esos ya están preconstruídos...

Lo que me llama la atención es el límite de exactamente 4MB... no se si sea
un error de tiempo de ejecución en el COM de excel o en IIS o en mi script o
en la compatibilidad de los flush de ASP con IIS6, el problema es que el log
del IIS no me entrega ningún error, porque el archivo se genera "sin
problema" y se "descarga" por el usuario... pero al abrir el archivo de excel
está en blanco, lo genera con tamaño 0kb
Tengo casi tres meses con el problema, y es una tarea que con IIS5 y 2k no
me daba ningún problema. Debe haber una solución y agradezco deantemano sus
sabios consejos =).
A continuación el script con el que estoy "forzando" el pop up de descarga
de archivos en las máquinas cliente (éste lo mando llamar cuando termina el
script que genera mis archivos de excel):

<%
'8***********************************************8
' Jason Withrow - For ASP101 July 2001
' This page forces the save as dialogue to prevent
' files from being opened in the browser.
'
'
'8***********************************************8

Response.Buffer = True
Dim strFilePath, strFileSize, strFileName

Const adTypeBinary = 1

strFilePath = Request.QueryString("File")
strFileSize = Request.QueryString("Size")
strFileName = Request.QueryString("Name")
Response.Write("ppppppppppppppppppppp"+strFilePath)


Response.Clear

'8*******************************8
' Requires MDAC 2.5 to be stable
' I recommend MDAC 2.6 or 2.7
'8*******************************8
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath

strFileType = lcase(Right(strFileName, 4))

' Feel Free to Add Your Own Content-Types Here
Select Case strFileType
Case ".asf"
ContentType = "video/x-ms-asf"
Case ".avi"
ContentType = "video/avi"
Case ".doc"
ContentType = "application/msword"
Case ".zip"
ContentType = "application/zip"
Case ".xls"
ContentType = "application/vnd.ms-excel"
Case ".gif"
ContentType = "image/gif"
Case ".jpg", "jpeg"
ContentType = "image/jpeg"
Case ".wav"
ContentType = "audio/wav"
Case ".mp3"
ContentType = "audio/mpeg3"
Case ".mpg", "mpeg"
ContentType = "video/mpeg"
Case ".rtf"
ContentType = "application/rtf"
Case ".htm", "html"
ContentType = "text/html"
Case ".asp"
ContentType = "text/asp"
Case Else
'Handle All Other Files
ContentType = "application/octet-stream"
End Select


Response.AddHeader "Content-Disposition", "attachment; filename=" &
strFileName
Response.AddHeader "Content-Length", strFileSize
' In a Perfect World, Your Client would also have UTF-8 as the default
' In Their Browser
Response.Charset = "UTF-8"
Response.ContentType = ContentType

Response.BinaryWrite objStream.Read
Response.Flush

objStream.Close
Set objStream = Nothing

%>

"Matías Iacono" escribió:

Dices que la descarga la haces forzando el popup de descarga?

Esto es, que modificas la cabecera del ASP y lo largas en forma binaria?

O tambien te pasa cuando el archivo es un archivo ya creado y solo se hace
referencia a el mediante un link?

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net
DCE3 v.2003 - DCE2 v.2005
Coordinador de evento Comunidad MSDN Bolivia
"Agustín Carrillo" <Agustín escribió en
el mensaje news:
> Tengo una extranet que programé en ASP...Anteriormente estaba sobre
> windows2k
> server (con IIS5 obviamente)
> La migré a un Win 2003 Server (IIS6)
> Tengo problemas con un script que me sirve para "forzar" la apertura del
> cuadro de diálogo de las descargas.
> El problema se presenta cuando descargo archivos mayores a 4MB...
> concretamente son archivos de Excel 2003 generados al vuelo mediante COM
> apartir de una base de datos en ACCESS 2003
> QUIERO HACER NOTAR QUE YA MODIFIQUÉ EL METABASE.XML EN ASPBUFFERINGLIMIT
> PONIENDOLO A 30MB en la notación correcta, y esto solo solucionó que el
> IIS
> ya no me mandara el error 500 (que se puede ver en el log) por exceder el
> tamaño del archivo AÚN ASÍ EL PROBLEMA PERSISTE...
> Lo curioso es que "puedo descargar" TODOS los archivos, pero cuando el
> archivo de excel que se construyó al vuelo excede los 4MB ¡¡¡¡lo
> descarga
> en blanco con un tamaño de 0kb (cero)!!!!!
> Algún MVP experimentado que pueda ayudarme????
>
> Gracias de antemano



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida