2010-08-02 9 views
13

¿Alguien sabe de algún problema al servicio de páginas HTML utilizando gzip Amazon S3. Tengo la necesidad de minimizar el tamaño del archivo de nuestros archivos HTML (es decir, sirviendo archivos HTML, CSS y JavaScript comprimidos) -, pero me preocupa que sea:GZIP con páginas HTML sirve de Amazon S3

  1. Amazon S3 no sirve a ficheros comprimidos correctamente a la navegador que lo solicita. O,

  2. Algunos navegadores tienen problemas para leer el contenido gzip. Entiendo navegadores antiguos no son compatibles con el contenido gzip (como Internet Explorer 6 y anteriores) - y algún software antivirus despojaré las cabeceras Content-Encoding (moderna?).

¿Es necesario para servir HTML sin comprimir (que creo que Amazon S3 apoyará fácilmente) - o puedo estar seguro de que la mayoría de los navegadores modernos manejar el contenido de mi gzipped de acuerdo?

Respuesta

2

Amazon S3 no es compatible con el contenido comprimido automáticamente, pero puede cambiar manualmente los encabezados de codificación de contenido antes de cargar el contenido. Omitirá obedientemente el contenido como contenido tipo gzip. Sin embargo, si las extensiones de archivo son .gz, a continuación, safari será tratarlo como un archivo adjunto, así que hay que utilizar .jgz como una extensión de archivo.

+0

Esto no es necesariamente cierto. La extensión tiene menos que ver con la forma en que el archivo se utilicen los navegadores en comparación con el Content-Type y cabeceras de respuesta Content-Encoding. – thesmart

+1

thesmart - Lo probé y descubrí que safari no respetará content-encoding = gzip si la extensión de archivo es .gz, pero podría haber arruinado la prueba –

+0

Michael: ah, no me di cuenta de que te referías a un error en Safari .gz.js funciona bien como una extensión, según mi experiencia. – thesmart

11

gzip el archivo y agregue la siguiente entrada de metadatos al objeto S3 antes de subirlo:

Content-Encoding=gzip
+0

esto está generando un ERR_CONTENT_DECODING_FAILED en los navegadores, lo mejor es hacer un script que automatice la compresión de gzip y luego cargue en s3. – panchicore

+0

el archivo tiene que ser gzip manualmente antes de subida – jujule