La compresión reduce los tiempos de respuesta al reducir el tamaño de la respuesta HTTP. Gzip es el método de compresión más popular y eficaz actualmente disponible y generalmente reduce el tamaño de respuesta en aproximadamente un 70%.
En 2009, el 90% del tráfico de Internet viajó a través de navegadores compatibles. Gzip. Hoy dia:
Todos los navegadores modernos admiten y negocian automáticamente la compresión GZIP para todas las solicitudes HTTP: nuestro trabajo es garantizar que el servidor esté configurado correctamente para servir el recurso comprimido cuando lo solicite el cliente.
En un servidor basado en Apache, puede hacerlo a través del archivo `.htaccess`:
# BEGIN GZIP AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript # END GZIP
Esa es esencialmente una lista de tipos MIME a los que luego se aplicará gzipping. Siéntase libre de modificar la lista de todos los activos basados en texto que sirve.
El proyecto HTML5 Boilerplate ofrece configuraciones de servidor para todos los servidores populares. Esta es su versión para .htaccess
AddOutputFilterByType DEFLATE "application/atom+xml" \ "application/javascript" \ "application/json" \ "application/ld+json" \ "application/manifest+json" \ "application/rdf+xml" \ "application/rss+xml" \ "application/schema+json" \ "application/vnd.geo+json" \ "application/vnd.ms-fontobject" \ "application/x-font-ttf" \ "application/x-javascript" \ "application/x-web-app-manifest+json" \ "application/xhtml+xml" \ "application/xml" \ "font/eot" \ "font/opentype" \ "image/bmp.webp" \ "image/svg+xml" \ "image/vnd.microsoft.icon" \ "image/x-icon" \ "text/cache-manifest" \ "text/css" \ "text/html" \ "text/javascript" \ "text/plain" \ "text/vcard" \ "text/vnd.rim.location.xloc" \ "text/vtt" \ "text/x-component" \ "text/x-cross-domain-policy" \ "text/xml"