Member of The Internet Defense League Últimos cambios
Últimos Cambios
Blog personal: El hilo del laberinto Geocaching

Cuidadín con la compresión...

Última Actualización: 16 de Marzo de 2.001 - Viernes

Ha pasado más de un año desde que escribí el documento anterior, y las cosas han ido cambiando. El número de navegadores con soporte de compresión es ya bastante importante, y han aparecido también herramientas automáticas para no tener que escribir código propio para aprovechar esta funcionalidad, como mod_gzip o class.gzip_encode.php.

No obstante, la experiencia adquirida en el año que llevo utilizando este sistema me ha permitido encontrar algunos problemas que necesitan ser documentados en alguna parte:

  • Algunos navegadores anuncian soporte GZIP, pero realmente no funciona.

    Esto obliga a poner código extra para identificar dichos servidores y no proporcionarles contenido comprimido aunque indiquen que pueden procesarlo.

    • Netscape 4.07.

    • Netscape 4.08 (algunos usuarios indican que sí funciona).

  • Envío de Javascript comprimido.

    Algunos navegadores no son capaces de aceptar código Javascript comprimido, en respuesta a una etiqueta "<SCRIPT SRC=>". Parece deberse a un problema con el soporte HTTP 1.0/1.1.

    El problema es errático, y parecen intervenir muchas variables.

    Cuando ocurre un problema, recargar la página funciona, y la página se carga bien.

    Una solución temporal es "embutir" el código javascript en el propio código de la página original, de forma automática, si el navegador soporta GZIP (por ejemplo, mediante SSI). Si el script se utiliza en varias páginas, puede resultar más rentable enviarlo sin ningún tipo de compresión, ya que se supone que el navegador lo guardará en su caché, y lo reutilizará en todas las páginas que lo empleen.

    • Internet Explorer 5.0.

    • Internet Explorer 5.5.

Bibliografía

Historia

  • 16/Mar/01: Primera versión de este documento.



Python Zope ©2001 jcea@jcea.es

Más información sobre los OpenBadges

Donación BitCoin: 19niBN42ac2pqDQFx6GJZxry2JQSFvwAfS