Volver a la página principal
martes 12 noviembre 2024
11

Cómo configurar directivas de caching en Apache

Configurar directivas de caching en Apache permite mejorar el rendimiento y la velocidad de carga de un sitio web al almacenar en caché ciertos archivos estáticos o contenidos dinámicos. Con estas directivas, se reducen las solicitudes al servidor, optimizando así la experiencia del usuario y el uso de recursos del servidor.

¿Qué son las directivas de caching en Apache?

Las directivas de caching en Apache se configuran en el archivo .htaccess o en la configuración principal del servidor para definir cómo y cuánto tiempo los navegadores o proxies deben almacenar en caché diferentes tipos de contenido. Esto es especialmente útil para archivos que no cambian frecuentemente, como imágenes, archivos CSS, y JavaScript, evitando que se descarguen cada vez que un usuario accede al sitio.

Configuración básica de caching en Apache

Apache permite la implementación de diferentes tipos de caché, como la caché de navegador y la caché del propio servidor. Para implementar caching en Apache, es necesario habilitar el módulo mod_expires o mod_cache.

Ejemplo de configuración básica de caché con mod_expires

El módulo mod_expires permite establecer una fecha de expiración para los archivos en caché. Aquí tienes un ejemplo básico:

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 1 month"
    
    # Imágenes
    ExpiresByType image/jpg "access plus 1 year"
    ExpiresByType image/jpeg "access plus 1 year"
    ExpiresByType image/gif "access plus 1 year"
    ExpiresByType image/png "access plus 1 year"
    
    # CSS y JavaScript
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType application/javascript "access plus 1 month"
</IfModule>

En este ejemplo:

  • ExpiresActive On activa el módulo mod_expires.
  • ExpiresByType especifica el tipo de archivo y el tiempo de expiración.

Tabla de directivas comunes de caching

Directiva Descripción Ejemplo
ExpiresActive Activa o desactiva mod_expires. ExpiresActive On
ExpiresByType Define el tiempo de expiración para un tipo específico. ExpiresByType image/png "access plus 1 year"
CacheEnable Activa caché en mod_cache. CacheEnable disk /path
CacheHeader Controla encabezados de caché en los clientes. CacheHeader add Cache-Control "max-age=86400"
CacheIgnoreNoLastMod Ignora recursos sin Last-Modified. CacheIgnoreNoLastMod On

Ejemplo de configuración con mod_cache

Otra opción de caché es mod_cache, que almacena el contenido en el propio servidor Apache. Esto es útil para aplicaciones con contenido dinámico.

<IfModule mod_cache.c>
    CacheQuickHandler off
    CacheLock on
    CacheRoot "/var/cache/apache2/mod_cache_disk"
    CacheEnable disk /
    CacheIgnoreNoLastMod On
    CacheDefaultExpire 3600
    CacheMaxExpire 86400
</IfModule>

Este ejemplo almacena en caché el contenido en disco, especificando el tiempo máximo y predeterminado de expiración.

Referencias

Para más información sobre la configuración de directivas de caching, puedes consultar la documentación oficial de Apache.

Etiquetas:
apache
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer