Almacenar el caché de un sitio web con un archivo .htaccess

 

Generalidades

Este artículo te muestra cómo utilizar varias herramientas en un archivo .htaccess para optimizar el rendimiento de tu sitio web.

Revisa este artículo para obtener más información sobre cómo crear un archivo .htaccess en su servidor web

Si el archivo ya existe, revisa los siguientes artículos para obtener instrucciones sobre cómo actualizarlo (dependiendo de si estás utilizando un cliente FTP o SSH):

Herramientas de caché

Puedes utilizar herramientas como mod_deflate y mod_expires para comprimir o almacenar en caché varios tipos de archivos.

Los siguientes ejemplos muestran la configuración predeterminada en los servidores DreamHost y no es necesario habilitarlos. Sin embargo, puedes ajustar estos valores en tu archivo .htaccess según sea necesario.

GZIP

DreamHost habilita la compresión GZIP de forma predeterminada en todos los planes de alojamiento web, por lo que no es necesario que hagas más pasos para activarla en tu sitio.

Sin embargo, ten en cuenta que SSLCompression está deshabilitado por defecto en los servidores de DreamHost debido a una vulnerabilidad de seguridad cuando la compresión es combinada con HTTPS (usando un Certificado TLS/SSL).

Puedes leer más sobre la compresión GZIP y las alternativas a usar para HTTPS en este artículo.

DEFLATE es un algoritmo de compresión de datos sin pérdidas similar a GZIP, pero funciona en Apache 2. En el pasado, mod_gzip era una herramienta recomendada. Pero DreamHost usa Apache 2 y mod_deflate, que llama a GZIP en el back-end automáticamente:

<ifmodule mod_deflate.c>
  # Compress HTML, CSS, JavaScript, Text, XML and fonts
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE application/x-font
  AddOutputFilterByType DEFLATE application/x-font-opentype
  AddOutputFilterByType DEFLATE application/x-font-otf
  AddOutputFilterByType DEFLATE application/x-font-truetype
  AddOutputFilterByType DEFLATE application/x-font-ttf
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE font/opentype
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE image/x-icon
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/xml
  # Remove browser bugs (only needed for really old browsers)
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  Header append Vary User-Agent
</ifmodule>

Almacenamiento en caché del navegador

Usando mod_expires, puedes indicar a los navegadores que visiten tu sitio que conserven determinados archivos durante más tiempo (como las imágenes, que rara vez se modifican):

# BEGIN Expire headers  
<IfModule mod_expires.c>  
  # Turn on the module.
  ExpiresActive on
  # Set the default expiry times.
  ExpiresDefault "access plus 2 days"
  ExpiresByType image/jpg "access plus 1 month"
  ExpiresByType image/svg+xml "access 1 month"
  ExpiresByType image/gif "access plus 1 month"
  ExpiresByType image/jpeg "access plus 1 month"
  ExpiresByType image/png "access plus 1 month"
  ExpiresByType text/css "access plus 1 month"
  ExpiresByType text/javascript "access plus 1 month"
  ExpiresByType application/javascript "access plus 1 month"
  ExpiresByType application/x-shockwave-flash "access plus 1 month"
  ExpiresByType image/ico "access plus 1 month"
  ExpiresByType image/x-icon "access plus 1 month"
  ExpiresByType text/html "access plus 600 seconds"
</IfModule>  
# END Expire headers  

Deshabilitar el almacenamiento en caché

Los ejemplos anteriores muestran la configuración predeterminada del servidor de DreamHost. Sin embargo, a veces puede ser necesario deshabilitar el almacenamiento en caché por completo. Agrega las reglas que aparecen a continuación a tu archivo .htaccess.

Deshabilitar el caché del sitio puede afectar significativamente la velocidad y tus puntuaciones de optimización. Se recomienda encarecidamente que dejes el almacenamiento en caché activo en tu sitio para garantizar que responda lo más rápido posible.

Solo continúa agregando las siguientes reglas si estás absolutamente seguro de saber lo que estás haciendo y comprendes las consecuencias. Puedes probar la velocidad de tu sitio utilizando algunos de los sitios web mencionados en este artículo.

#Disables GZIP
SetEnv no-gzip 1
    
#Turns off the expires headers for Apache
<IfModule mod_expires.c>
  ExpiresActive Off
</IfModule>

# Disable Caching
<IfModule mod_headers.c>
    Header set Cache-Control "no-cache, no-store, must-revalidate"
    Header set Pragma "no-cache"
    Header set Expires 0
</IfModule>

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?