Con W3 Total Cache la velocidad de respuesta de tu blog mejorará considerablemente, esto lo he descubierto después que Google penalizó uno de mis blogs, descendiendo el tráfico al 30%, por lo que he estado más atento de todo lo que me dice Google Webmastertools.

W3 Total Cache es uno de muchos plugins para wordpress que mejoran la velocidad de respuesta, pero he de decir que se puede personalizar tanto que considero que no tiene competencia. En el caso particular de éste blog, lo evalué antes de implementar éste plugin, con una extensión de Google llamada Page Speed que funciona con Firebug en Firefox y obtuvo 70/100 pts. Después de implementarlo y mejorar pequeños detalles, llegó a una puntuación de 92/100.

Me encontré varias guías por la red y el resultado de mi configuración es la siguiente:

0. Prerequisitos

Eliminar cualquier plugin de Cache que hallan instalado previamente. Explora tus carpetas en el sevidor y asegurate que tu wp-config.php no contenga la linea

define(‘WP_CACHE’, true);

Dirígete a la carpeta /wp-content/ y elimina todos los archivos que encuentres acerca de cache como por ejemplo

advanced-cache.php, wp-cache-config.php, etc.

1. Instalación

  • Ingresa a la administración de wordpress en la sección Plugins.
  • Escoge la opción Add New y busca W3 Total Cache.
  • Instala el plugin y activalo.

2. Configuración

En la configuración de W3 Total Cache ingresa a General Settings. Ahí activaremos 4 opciones que son: Page Cache, Minify, Content Delivery Network y Browser Cache.

A continuación ingresaremos a la página de configuración de cada una de las anteriores opciones y las explicaré a detalle.

2.1 Page Cache

Entramos a la página de configuración de Page Cache desde el menú de W3 Total Cache, a las siguientes secciones y verificamos estos valores:

General
  • Enable (checked) – Don’t cache pages for logged in users
  • Enable (checked) – Cache home page
  • Enable (checked) – Cache feeds
  • Disable (unchecked) – Cache URIs with query string variables
  • Disable (unchecked) – Cache 404 (not found) pages
Cache Preload
  • Enable (checked) – Automatically prime the page cache
  • Update internal – 907
  • Pages per interval: 7 (increase/decrease as needed)
  • Sitemap URL: Your blogs sitemap.xml URL, e.g. http://example.com/sitemap.xml

Con esto terminamos con la configuración de Page Cache.

2.2 Minify

Esta configuración es muy interesante, ya que lograrás integrar en un solo archivo todos tus css, en otro todos tus js y optimizar tu html, para que reduzca considerablemente el tiempo de entrega de recursos al usuario.

Verifica y atiende a las especificaciones de las siguiente secciones:

Cascading Style Sheets
  • Enable: Enable (checked)
  • Disable: Combine only (unchecked)
  • Enable: Comment Removal (checked)
  • Enable: Line break removal (checked)

Escoge el tema que estes utilizando en la subsección CSS file management.

En otra ventana carga tu blog y visualiza el código fuente. En él busca todos los archivos .css y agrega cada uno en la subsección CSS file management. Si alguno tiene algún tipo de versionamiento (ej style.css?ver=1.2.3) borralo, es decir borra todo lo que venga después del .css

Graba, dale Deploy y Borra el Cache y revisa su funcionamiento, si algún estilo se pierde quita el css que crees que está dando el problema y vuelve a probar todo el sitio. No avances a la siguiente opción hasta que encuentres los resultados que necesites.

Javascript

Elige los siguientes parámetros:

  • Enabled: Enable (checked)
  • Disabled: Combine only after <head>
  • Disabled: Combine only after <body>
  • Disabled: Combine only before </body>
  • Enabled: Comment removal
  • Enabled: Line break removal

Escoge el tema de tu blog y al igual que con los CSS busca todos los js alojados en tu dominio y agrégalos uno a uno en la sección JS file management, especificando en la zona que se encuentra que es indicada en el combo box. Recuerda eliminar cualquier tipo de versionamiento.

Graba, dale Deploy y Borra el cache y prueba todo el sitio en busca de errores de JavaScript, elimina cualquier js de la lista en caso que te de error y no avances hasta que estes conforme.

Advanced

Asegurate que tenga los siguientes valores

  • Update external files every: 216000 seconds
  • Garbage collection interval: 216000 seconds
General
  • Enable: Rewrite URL structure (checked)
  • Enable: Automatically upload mofified files (checked)
  • Minify error notification: Enable this to get error notification if something goes wrong.
HTML
  • Enable: Enable (checked)
  • Disable: Don’t minify feed (checked)
  • Enable: Inline CSS minification (checked)
  • Enable: Inline JS minification (checked)
  • Enable: Line break removal (checked)

Graba y terminamos con la configuración de Page Cache.

2.3 Browser Cache

Nos dirigimos a la página de configuración de Browser Cache y nos aseguramos que tengan los siguientes valores.

General
  • Enable (checked): Set expires header
  • Enable (checked): Set cache control header
  • Disable (unchecked): Set entity tag (eTag)
  • Enable (checked): Set W3 Total Cache header
  • Enable (checked): Enable HTTP (gzip) compression
  • Disable (unchecked): Do not process 404 errors

Las secciones Cascading Style Sheets & JavaScript, HTML y Media & Other Files no sufrirán cambio alguno.

Grabamos y terminamos la configuración de Browser Cache.

2.4 Content Delivery Network (CDN)

Esta parte es muy importante ya que tendremos que hacer modificaciones en nuestro hosting para que funcione correctamente. En dado caso no tienes acceso puedes saltarte esta configuración pero valdría la pena que hicieras el esfuerzo, ya que el navegador carga más rápido si nuestro elementos estáticos no provienen del mismo dominio, por lo que crearemos un subdominio para esto.

Configuración en tu hosting
Subdominio

Entra en la administración de tu hosting y crea un subdominio subdominio.tudominio.com que apunte a una carpeta específica de tu sitio, donde se almacenarán todos los archivos estáticos de tu blog, por ejemplo si tu dominio fuera blog.com te recomiendo que tu subdominio sea static.blog.com.

Usuario FTP

Necesitarás crear un nuevo usuario FTP, creale un password y asegurate que apunta a la misma carpeta que el subdominio anterior y anota todos los valores necesarios para configurar un cliente FTP

Luego que ya tienes este cambio y el subdominio ya se propagó, dirigete a la administración de tu wordpress y accede a la sección de configuración CDN y verifica los siguientes valors:

General

Selecciona todas las casillas

Configuration
  • Selecciona Use passive FTP mode (si y solo si pasa la prueba que te indico abajo, si no la pasa, deselecciona esta opción para no causar serios problemas en el funcionamiento de tu blog).

Ingresa los valores de tu servidor para configurar tu cliente FTP. Un ejemplo podría ser el siguiente:

  • FTP Hostname: ftp.tudominio.com
  • FTP Username: tuusuario@servidorftp.com
  • FTP Password: *****
  • FTP Path: . (el punto indica que suba los archivos en la raiz del directorio que especificaste cuando creaste el usuario FTP)
  • SSL Support : Auto
  • Replace site’s hostname with: subdomino.dominio.com (el subdomino que creaste como static.blog.com por ejemplo)

Prueba tus servicio y si te indica Test Passed, graba y terminaste con esta sección, si tiene algún problema, revisa tus valores.

Regresa a la sección General y dale clic a todos lo botones de Upload files, para que mueva todos los archivos necesarios al CDN y con esto terminaríamos las configuraciones de esta sección.

Por último tienes que dirigirte a General Settings de W3 Total Cache y desactiva el Preview Mode para activar completamente el plugin, además es bueno que borres el cache, para que el sistema empiece desde cero.

Esta es la configuración que me ha funcionado y ha mejorado considerablemente el rendimiento de éste blog. En caso de cualquier duda, escríbela en los comentarios.

Tagged on:             

32 thoughts on “Cómo configurar W3 Total Cache para optimizar tu blog

  • Pingback: Problemas con W3 total caché. | Blog multi-temático de Antonio Castro

  • May 11, 2011 at 3:13 pm
    Permalink

    Excelente tutoria !!

    Gracias por tomarte el tiempo de prepararlo y compartirlo 😉

    Reply
  • May 21, 2011 at 5:25 pm
    Permalink

    no me funciona la parte del minify. Buscandoen el codigo fuente, me aparece un nuevo js y css supuestamente es el resumen, me indica error 500.

    intente agregar la url de mi pagina y la url de la cdn y no funciona, que podra ser?

    Reply
    • June 2, 2011 at 11:10 pm
      Permalink

      Ese problema me da al actualizar el plugin, de momento desactive minify porque me quedaba sin estilos, si encuentro el error lo posteareé, pero espero que se arregle con la próxima actualización.

      Reply
      • June 18, 2011 at 2:22 pm
        Permalink

        desactiva esto: Rewrite URL structure
        If disabled, CSS and JS embeddings will use GET variables instead of “fancy” links. y te funcionará como antes

        Reply
  • July 16, 2011 at 3:28 pm
    Permalink

    Hola.

    MARAVILLOSO EL TUTORIAL. Muchísimas gracias.

    Solamente un par de cositas:

    No funciona lo de los .css, aunque según dices en tu comentario no soy el único, pero lo peor es que no funciona lo del CDN. He seguido todos tus pasos, pero el “Test FTP server” me dice: “Error: Incorrect login or password (ftp_login() [function.ftp-login]: Login incorrect.). Lo de “[function.ftp-login]” me aparece remarcado como link y al pulsarlo intenta buscar el fichero en mi servidor (via navegador) y me dice que no se encuentra la página (normal).

    ¿No tendré que hacer, tal vez, un .php que se llame “function.ftp-login” o “ftp-login”.

    Gracias.

    P.D. Además todo funciona genial, pero en cuanto configuro esa parte se me va la página al garete…a la mierda vamos…

    Reply
  • July 16, 2011 at 3:30 pm
    Permalink

    Una preguntita más, que me olvidaba:
    Donde pone “FTP Path:” simplemente se pone el punto, no?, nada más

    Gracias de nuevo

    Reply
  • July 16, 2011 at 3:32 pm
    Permalink

    Hola otra vez.

    He visto en el transfer queue, que tal vez haya que ponerlo en el .htacces…

    Reply
  • July 16, 2011 at 4:11 pm
    Permalink

    Hola Carlos

    Perdona, pero ya te dejo en paz jeje.

    Ya he descubierto que fallaba, no se si será por la versión, yo estoy utilizando actualmente la 0.9.2.3 y todo lo tienes bien, lo único que falla es que el usuario es sin el: “@servidorftp.com”.

    Lo único que sigue sin funcionar es lo de los .css.

    MUCHÍSIMAS GRACIAS, HA MEJORADO LA VELOCIDAD UNA BARBARIDAD

    Reply
    • November 3, 2011 at 10:30 am
      Permalink

      Desactiva Rewrite URL structure en Minify y limpia el cache y listo. En cada actualización juega activando o desactivando ésta opción ya que me ha variado en varias versiones.

      Reply
  • September 3, 2011 at 6:08 am
    Permalink

    saludos hice todos los pasos, y tengo un problema con el CDN, al probar el test FTP server, me sale el siguiente error

    Error: Unable to resolve hostname: static.fullmuzic.com.

    Reply
    • November 3, 2011 at 10:31 am
      Permalink

      Revisa muy cuidadosamente tus datos ftp, a mi me salió ese error, pero corregí mis datos. Nos cuentas si te sigue molestando

      Reply
  • September 9, 2011 at 8:04 am
    Permalink

    Artículo muy completo y muy interesante. Muchas gracias.

    Reply
  • Pingback: Plugins recomendados para Wordpress | quieroserblogger.com

  • September 26, 2011 at 4:16 pm
    Permalink

    Hola

    Muchas gracias por el articulo, muy interesante. He seguido todos los pasos y todo muy bien, excepto que no puedo desahabilitar el preview mode.

    Preview settings could not be deployed. Please run chmod 777 /furanet/sites/canariasanuncia.com/web/htdocs/wp-content to make the configuration file write-able, then try again.

    No puedo cambiar los permisos al fichero, es muy raro…

    Ademas tengo tambien este error:

    It appears Page Cache URL rewriting is not working. If using apache, verify that the server configuration allows .htaccess or if using nginx verify all configuration files are included in the configuration.

    Alguien sabe como puedo solucionarlo,

    Mil gracias,

    Reply
  • October 10, 2011 at 7:09 am
    Permalink

    Pues yo tengo que decir que lo he instalado con éxito en una de mis webs. Ni un sólo error de momento.

    Eso si, he usado la versión 9.1.3 porque la última me dió varios problemas al igual que muchos otros webmasters. Con lo cual se me ocurrió volver a probar suerte con esa versión anterior.

    Reply
  • October 10, 2011 at 8:22 am
    Permalink

    Rectifico: he tenido que desactivar esta opción en el Minify:

    Rewrite URL structure

    Sino no me cargaba los estilos css.

    Reply
    • November 3, 2011 at 10:33 am
      Permalink

      Ese problema me ha dado y solo juego activándolo y desactivándolo, porque cambia mucho entre versiones

      Reply
  • November 18, 2011 at 3:02 am
    Permalink

    Cuanto es lo recomendado para el browser cache, por defecto viene con 31536000 segundos qu es demasiado supongo ya que si hago algun cambio en la css de mi plantilla el que borre cache no ve el cambio, por otro lado es bueno tener esta opcion activada para evitar el consumo del servidor.

    Reply
    • November 18, 2011 at 8:56 am
      Permalink

      Depende mucho de cada sitio, de cada cuanto se realizan ese tipo de cambios. Lo ideal es tener siempre en mente que hay que limpiar el caché, para que se vean reflejado los cambios.

      Reply
      • November 18, 2011 at 2:19 pm
        Permalink

        Para ser mas especíifico he cambiado el style.css de mi wp y no quisiera dejar un mensaje todo el tiempo que limpien la cache de su navegador (porque todos no lo harán), quisiera que la browser cache automáticamente impida al navegador cachear al menos por 1 semana para que todos mis visitantes tengan el nuevo estilo sin hacer nada como sucede en otras webs.

        Reply
  • December 13, 2011 at 10:58 am
    Permalink

    Hola Carlos, en el tema del CDN lo he echo todo correcto, crear el subdominio y un usuario ftp apuntado a ese dominio, pero cuando hago la prueba para ver si esta correcto me dice que en el FTP Path que el direcctorio no existe, he echo varias modificaciones pero sigue diciendo lo mismo,alguna sugerencia? que debemos poner ahi exactamente?gracias

    Reply
  • December 13, 2011 at 11:09 am
    Permalink

    Muchas gracias por el tutorial. Lo realice en un 50% por miedo a los errores que les dio a otros users.

    Pero se agradece. Salu2

    Reply
  • March 7, 2012 at 2:53 pm
    Permalink

    buenisimo, lo andaba buscando ya que tengo muchas visitas en mi blog de wordpress, pero el plugin se ha actualizado, quiza sea de actualizar este post también

    Un saludo.

    Reply
  • March 11, 2012 at 11:32 am
    Permalink

    Hola, buen tutorial sobre el W3. sin embargo, hay algo que no parece estar claro, quizás debido a que el pluging se ha actualizado y ha cambiado.

    En los prerequisitos indicas que se debe eliminar la linea
    define(‘WP_CACHE’, true)

    Sin embargo, esta linea es añadida por el propio plugin.

    Reply
  • March 25, 2012 at 11:41 am
    Permalink

    Buenas Tardes. Yo lo instale este pluging despues me esta causando problema con el siguiente error cuando voy a crear nueva paginas y etc : Fatal error: Out of memory (allocated 27262976) (tried to allocate 444621 bytes) in …. y ya he investigado pero no consigo la solución..

    Reply
  • June 6, 2012 at 11:35 am
    Permalink

    Saludos: ya hice todo el procedimiento , pero me sale este mensaje :

    It appears Page Cache URL rewriting is not working. If using apache, verify that the server configuration allows .htaccess or if using nginx verify all configuration files are included in the configuration.

    Que debo hacer?

    Gracias

    Reply
  • Pingback: Usted Recomienda Determinado

  • January 14, 2013 at 3:10 pm
    Permalink

    Muy buen articulo, de mucha utilidad, gracias

    Reply
  • April 6, 2013 at 2:23 pm
    Permalink

    Gracias, hice algunas modificaciones, tenia problema con las imagenes pero ya parece haberse solucionado. Un aludo.

    Reply
  • May 5, 2013 at 1:03 pm
    Permalink

    hola estoy utilizando wordpress 3.5.1 y el plugin w3 total cache y dese que lo tengo instalado la web cambia completamente no es como yo la tengo

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *