Optimización web con ETags. Ejemplo con WordPress

WHAT TO KNOW - Sep 10 - - Dev Community

<!DOCTYPE html>











Optimización Web con ETags: Un Ejemplo con WordPress



<br>
body {<br>
font-family: sans-serif;<br>
margin: 0;<br>
padding: 0;<br>
}</p>
<div class="highlight"><pre class="highlight plaintext"><code> h1, h2, h3 {
text-align: center;
}
img {
    display: block;
    margin: 20px auto;
    max-width: 100%;
}

code {
    font-family: monospace;
    background-color: #f5f5f5;
    padding: 5px;
    border-radius: 5px;
}

pre {
    background-color: #f5f5f5;
    padding: 10px;
    border-radius: 5px;
    overflow-x: auto;
}
Enter fullscreen mode Exit fullscreen mode

</code></pre></div>
<p>








Optimización Web con ETags: Un Ejemplo con WordPress






Introducción





En el mundo de la optimización web, cada milisegundo cuenta. Una de las técnicas para mejorar la velocidad de carga de un sitio web es el uso de ETags. Los ETags son una herramienta poderosa del protocolo HTTP que ayudan a los navegadores a determinar si una versión local de un recurso web está actualizada o si necesita descargar una nueva versión del servidor.





En este artículo, profundizaremos en el concepto de ETags y exploraremos cómo se pueden utilizar en WordPress para mejorar el rendimiento del sitio.






¿Qué son los ETags?





Un ETag (Entity Tag) es un identificador único que un servidor web genera para un recurso. Este identificador se envía al navegador junto con el recurso en la primera solicitud. En las siguientes solicitudes, el navegador incluye el ETag en la cabecera "If-None-Match" para que el servidor determine si la versión local del recurso está actualizada.





Si el servidor detecta que el recurso no ha cambiado, envía un código de estado HTTP 304 (Not Modified) al navegador. Esto indica que la versión local es válida y que el navegador no necesita descargar el recurso de nuevo. De esta manera, se ahorra tiempo y ancho de banda.



Google Logo




Cómo funcionan los ETags en la práctica





  1. Primera solicitud:

    El navegador solicita un recurso al servidor. El servidor responde con el recurso y un ETag único.


  2. Solicitudes posteriores:

    El navegador almacena el ETag en caché. En las siguientes solicitudes del mismo recurso, el navegador incluye el ETag en la cabecera "If-None-Match".


  3. Validación del recurso:

    El servidor compara el ETag recibido con el ETag asociado al recurso en el servidor. Si los ETags coinciden, el recurso no ha cambiado y el servidor envía un código 304 (Not Modified). Si los ETags no coinciden, significa que el recurso ha sido actualizado y el servidor envía el recurso actualizado con un nuevo ETag.





Implementación de ETags en WordPress





WordPress, por defecto, utiliza ETags para optimizar la entrega de recursos estáticos como imágenes, archivos CSS y JavaScript. Sin embargo, es posible que desee configurar ETags para otros tipos de recursos, como archivos de plantilla o contenido dinámico. Para ello, puede utilizar plugins o modificar el archivo .htaccess de su sitio web.






Plugins de WordPress para ETags





Existen varios plugins de WordPress que permiten controlar los ETags en su sitio web. Algunos de los más populares incluyen:





  • WP Super Cache:

    Este plugin optimiza el rendimiento del sitio web utilizando la caché de páginas. También incluye soporte para ETags.


  • W3 Total Cache:

    W3 Total Cache es un plugin completo que optimiza varios aspectos del sitio web, incluyendo la caché de páginas, la compresión gzip, la optimización de imágenes y el uso de ETags.


  • Cache Enabler:

    Cache Enabler es un plugin de caché ligero que proporciona una configuración fácil para ETags y otras características de rendimiento.





Configuración de ETags en el archivo .htaccess





Si no desea utilizar un plugin, puede configurar ETags directamente en el archivo .htaccess de su sitio web. A continuación, se muestra un ejemplo de cómo hacerlo:





Habilitar ETags



Header set Cache-Control "public, max-age=31536000"

Header set ETag "W/"'"date +%s'"'"'









Este código habilita ETags para los archivos con las extensiones indicadas. El código también establece una fecha de caducidad de 1 año para la caché (max-age=31536000). Si desea personalizar estos valores, puede modificarlos según sus necesidades.






Ejemplo práctico: ETags con WordPress





Suponga que tiene una página web con una imagen que se muestra en la parte superior. El navegador del usuario solicita la imagen por primera vez, el servidor envía la imagen y un ETag asociado. El navegador guarda el ETag en caché.





Si el usuario visita la página nuevamente, el navegador enviará el ETag previamente almacenado en la cabecera "If-None-Match". El servidor compara el ETag con el ETag del recurso en el servidor. Si coinciden, el servidor responde con un código HTTP 304 (Not Modified) y el navegador utiliza la versión en caché de la imagen.





Este proceso ahorra tiempo y ancho de banda, ya que el navegador no necesita descargar la imagen de nuevo del servidor. El usuario experimenta una carga de página más rápida.






Conclusión





Los ETags son una herramienta esencial para mejorar la velocidad de carga de un sitio web. Al utilizar ETags, puede reducir el tiempo de carga de las páginas y optimizar el uso del ancho de banda. WordPress ofrece opciones fáciles para habilitar ETags, ya sea mediante plugins o mediante la configuración del archivo .htaccess.





Al implementar ETags, puede mejorar significativamente el rendimiento de su sitio web, lo que dará como resultado una experiencia de usuario más rápida y satisfactoria.




. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player