Cómo usar Varnish con WordPress

Los sitios web de carga lenta son un fastidio de usar y pueden costarle a los usuarios. Además, no hay excusa para un sitio web lento teniendo en cuenta la cantidad de formas que existen para acelerar el rendimiento , incluido el almacenamiento en caché.

Hay muchas formas de implementar el almacenamiento en caché, así como herramientas que pueden ayudarlo a realizar el trabajo. En este artículo, hablaremos sobre cómo funcionan los proxies inversos y le enseñaremos cómo usar Varnish en WordPress.

¡Hagámoslo!

¿Qué es un proxy inverso (y por qué debería usar uno)?

Los servidores proxy también se conocen como servidores «intermediarios». En la mayoría de los casos, esos servidores se colocan entre los usuarios y el resto de la web. El proxy filtra las solicitudes de los usuarios, siguiendo un conjunto específico de reglas.

Para darte un ejemplo, tu proveedor de servicios de Internet (ISP) o tu lugar de trabajo podrían usar un proxy para impedir que accedas a sitios web específicos. También puede usar un servidor proxy para proteger su privacidad, cifrar solicitudes web o evitar restricciones en la web.

Los proxies ‘inversos’, por otro lado, se colocan entre Internet y su servidor web. Su trabajo es filtrar las solicitudes entrantes. Estos son algunos de los beneficios de usar un proxy inverso para su sitio web:

  • Balanceo de carga. Si tiene varios servidores web , el proxy inverso puede enrutar las solicitudes según la carga de cada computadora.
  • Privacidad mejorada. El uso de un proxy inverso oculta la información de su servidor final. Si alguien está husmeando, solo verá hasta el proxy inverso.
  • Gestión de varios certificados de capa de sockets seguros (SSL). Su proxy inverso puede manejar las solicitudes HTTP entrantes y obtener los datos sin cifrar necesarios de su servidor final.
  • Propósitos de almacenamiento en caché. Un proxy inverso puede almacenar en caché el contenido estático y dinámico de su sitio web, lo que reduce la carga en su servidor.

Para resumir, los proxies inversos son geniales. Si su principal preocupación es aumentar el rendimiento de su sitio web de WordPress, el almacenamiento en caché es una de las mejores herramientas a su disposición para hacerlo.

Sin embargo, hay varias formas de aprovechar el almacenamiento en caché. Puede confiar en los navegadores de sus usuarios para almacenar datos, o usar una red de entrega de contenido (CDN) para administrar el almacenamiento en caché por usted. Alternativamente, puede implementar un caché de proxy inverso. Eso es precisamente lo que Varnish puede hacer por los usuarios de WordPress.

Una introducción a Varnish para WordPress

Varnish es una herramienta de almacenamiento en caché de página completa de código abierto, que puede funcionar como un proxy inverso. Eso significa que puede actuar como intermediario entre los usuarios finales y su sitio web. Cada vez que alguien visita el sitio, Varnish verificará su propio caché para ver si tiene una copia de la página que desea ver. Si no es así, buscará esa página y luego la almacenará para su uso posterior.

En la práctica, Varnish puede aumentar drásticamente el rendimiento de su servidor. Esto se debe a que es mucho más fácil servir contenido almacenado en caché que renderizar ese contenido desde cero. Al usar Varnish para WordPress, puede guardar copias de todos los activos en su sitio web que no cambian muy a menudo. Si purga o renueva ese caché periódicamente, debería ofrecer una representación perfecta de píxeles de su sitio web en la mayoría de las circunstancias.

Como mencionamos anteriormente, los servidores proxy siguen reglas específicas cuando manejan solicitudes. Varnish utiliza su propio lenguaje para las reglas internas, llamado Varnish Configuration Language (VCL) . En la práctica, VCL le brinda control total sobre la configuración de su servidor proxy, por lo que primero deberá familiarizarse con él.

También puede ampliar la funcionalidad central de Varnish utilizando ‘VMOD’, que son módulos que mejoran la herramienta. El sitio web oficial de Varnish mantiene un repositorio de VMODS populares , así que no dudes en echarle un vistazo también.

Para que Varnish funcione, deberá instalar la herramienta directamente en su servidor. Eso significa que necesitará acceso a la línea de comando, que descarta aquellos en planes de alojamiento compartido. Sin embargo, si está utilizando un servidor privado virtual (VPS) , un entorno de nube o incluso un servidor dedicado, siga leyendo para aprender cómo configurar Varnish en WordPress.

Cómo configurar Varnish para WordPress (en 3 pasos)

A lo largo de este tutorial, realizará varios cambios en el nivel del servidor. Si no se siente cómodo usando la línea de comandos o modificando su servidor, es posible que desee leer detenidamente todas las instrucciones antes de comenzar. Además, es una buena idea hacer primero una copia de seguridad de su sitio web utilizando un complemento de copia de seguridad de WordPress , por si acaso.

Paso 1: instale Varnish en su servidor

Para instalar Varnish, deberá acceder a su servidor a través de la línea de comandos . Luego, deberá instalar la herramienta, modificar su archivo VCL y configurar su servidor para que funcione con él.

Para este paso, continúe y consulte las instrucciones de instalación oficiales de Vanish para servidores basados ​​en UNIX. Ese breve tutorial incluye todos los comandos que necesitará usar en el orden correcto.

Una vez que instale Varnish y configure su servidor web para que funcione junto con él, recuerde reiniciar todo. Entonces estará listo para ajustar WordPress para que funcione junto con su nueva herramienta.

Paso 2: configure un complemento de purga de caché de proxy

Idealmente, desea configurar Varnish para purgar su caché en momentos predeterminados. De esa manera, no ofrecerá a los visitantes versiones desactualizadas de su contenido.

La mejor manera de hacer esto en WordPress es purgar el caché del proxy inverso cada vez que actualice una página o una publicación (o cree una nueva). Como puede imaginar, hay un complemento que puede hacer esto por usted, llamado Proxy Cache Purge :

Nos gusta este complemento porque no purga todo el caché cuando publica o edita una página o publicación. En cambio, solo apunta a los cachés de su página principal, el contenido editado y las taxonomías asociadas . La única vez que el complemento purga todo el caché del proxy inverso automáticamente es cuando cambia de tema.

Proxy Cache Purge no necesita ninguna configuración adicional, pero debe habilitar los enlaces permanentes personalizados para que el complemento funcione correctamente. Si aún no está utilizando una estructura de enlaces permanentes personalizada (¡que debería estarlo!), consulte nuestra guía sobre cómo configurar una . Cualquier estructura servirá, así que siéntete libre de elegir tu favorita.

Paso 3: configure sus ajustes de Varnish para WordPress

Si siguió las instrucciones de configuración oficiales para Varnish, obtendrá un archivo de configuración que funciona para WordPress pero que no está optimizado para la plataforma.

Para optimizar Varnish para WordPress, recomendamos realizar tres pequeños cambios en su archivo VCL:

  1. Configure Varnish para ignorar cookies específicas .
  2. Excluya su administrador de WordPress y las páginas de inicio de sesión.
  3. Ampliar la duración de la memoria caché del proxy inverso.

Puede hacer esto abriendo el archivo de configuración de Varnish usando un editor de texto a través de la línea de comando. El archivo que está buscando es default.vcl y debería estar ubicado aquí:

01
/etc/varnish/default.vcl

Abra el archivo y agréguele el siguiente fragmento de código, que viene por cortesía de la documentación oficial de Varnish :

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
dieciséis
17
18
19
20
#unsetting wordpress cookies
sub vcl_rec{
..
set req.http.cookie = regsuball(req.http.cookie, "wp-settings-d+=[^;]+(; )?", "");
set req.http.cookie = regsuball(req.http.cookie, "wp-settings-time-d+=[^;]+(; )?", "");
set req.http.cookie = regsuball(req.http.cookie, "wordpress_test_cookie=[^;]+(; )?", "");
if (req.http.cookie == "") {
unset req.http.cookie;
}=
}
# exclude wordpress login and admin urls
if (req.url ~ "wp-admin|wp-login") {
return (pass);
}
# extending caching time
sub vcl_backend_response {
if (beresp.ttl == 120s) {
set beresp.ttl = 1h;
}
}

Guarda los cambios en default.vcl y listo. Su servidor proxy inverso está listo para trabajar con WordPress. Ahora Varnish no se comunicará con su servidor cada dos minutos (que es el valor predeterminado), sino una vez cada hora.

Conclusión

Si tiene acceso completo a su servidor, implementar un proxy inverso para WordPress es una forma efectiva de mejorar los tiempos de carga para los usuarios. Además, el uso de un proxy inverso puede permitir que su servidor maneje cargas de tráfico mucho más pesadas, ya que Varnish se encarga de la mayor parte del trabajo por usted.

Necesitará acceso a su servidor para configurar Varnish para WordPress. Después de eso, la instalación y configuración solo toma tres pasos:

  1. Instale Varnish en su servidor.
  2. Configure un complemento de purga de caché de proxy .
  3. Configure sus ajustes de Varnish para WordPress.

¿Tienes alguna pregunta sobre cómo usar Varnish con WordPress? ¡Hablemos de ellos en la sección de comentarios a continuación!

Imagen en miniatura del artículo de Studio_G / shutterstock.com