¿Te encuentras con el problema de que tu sitio de WordPress está funcionando lento o notas picos en el consumo de recursos que deseas bajar? No busques más! Esta lista te ayudará a optimizar tu sitio de WordPress, acelerar el tiempo de respuesta y reducir su consumo de recursos, al mismo tiempo!
He aquí algunas de los mejores tips y herramientas para lograrlo:
- Desactivar y eliminar cualquier plugin de WordPress no utilizado.
- Eliminar todas las plantillas de WordPress no utilizados (themes).
- Instala los siguientes plugins de protección web:
- Akismet
- Desactivar XML-RPC
- TimThumb Scanner
- Firewall 2
- Login Lockdown
- Sabre (si es el correo no deseado de registro lo que está causando problemas)
- Backup Creator
- Instala los siguientes plugins de rendimiento web:
- WP crontrol
- WP-Cron control
- Plugin Organizer
- Broken Link Checker
- Clean Options
- EWWW Image Optimizer
- WP Clean Up
- W3 Total Cache
- Antes de modificar cualquier configuración en tu sitio, recomendamos realizar una copia de seguridad utilizando Backup Creator.
Consejo de copia de seguridad: Si tienes un plugin de caché, lo cual es muy probable, elimina los archivos del cache de tu programa de backup. Esto hará que el tamaño de la copia de seguridad sea mucho más pequeño.
- Actualiza cualquier plugins desactualizado, temas, o la propia aplicación de WordPress si es necesario.
- Ejecuta el escáner TimThumb y asegúrate de que todo esté al día.
- Reemplaza Google Analyticator con Google Analytics para WordPress y vuelve a configurar el plugin con la configuración que estabas usando en Google Analyticator.
- Utiliza WP Cleanup para eliminar:
- Revision Posts
- Draft Posts
- Auto Draft Posts
- Spam Comments
- Orphan CommentMeta
- Orphan PostMeta
- Orphan Relationships
- Dashboard Transient Feed
- Utiliza WP Cleanup para optimizar tu base de datos.
- Ejecuta Broken Link Checker para corregir o eliminar cualquier enlace roto. Una vez que se haya completado, desactivar y eliminar el plugin.
- Configura tu IP en la lista blanca del Firewall WP 2, así como la dirección IP del servidor y los ajustes
Nota: todas las opciones deben ser tildadas excepto “Block leading http:// and https://” . Seleccionar “redirect to homepage” para evitar mostrar a un hacker potencial un mensaje de error.
- WP crontrol
- Habilita WP crontrol para cualquier cron job que se ejecute de plugins que hayas desinstalado. Si los hay, asegúrate de borrarlos.
- Habilita WP crontrol para cualquier cron job que se esté ejecutando con demasiada frecuencia (más frecuente que cada 15 minutos). Si los hay, configúralos correctamente.
- Deshabilita el cron WordPress y reemplazalo con cron jobs manuales:
- Deshabilita el cron en wp-config.php añadiendo esta línea: define (‘DISABLE_WP_CRON’, true);
- Configura WP-Cron Control y configure el cron job manual desde cPanel.
- Configura “Plugin Organizer” para que los plugins que utilizan la mayor cantidad de recursos sólo se utilicen en los posts / páginas que especifiques. Utiliza también “Plugin Organizer” para volver a organizar el plugin de carga de pedidos, y para deshabilitar los plugins que no son necesarios en el backend, o front-end. Esto esencialmente ayuda a reducir el uso de recursos de más.
- Ejecuta “Clean Options” y elimina tablas de la tabla de opciones (siempre ten cuidado de eliminar únicamente las tablas de plugins que sabes a ciencia cierta que has desinstalado).
- Ejecuta tus imágenes a través de la función “bulk optimize” de EWWW Image Optimizer.
- Asegúrate de que Akismet esté instalado y configurado. Si es así, borrar cualquier spam.
- Deshabilita cualquier copia de seguridad automática. Estas podrían ser la causa del aumento en el consumo..
- Haz un test con Google PageSpeed para conseguir pistas sobre qué más precisas optimizar, por ejemplo:
- Instalación y configuración de W3 Total Cache
- La creación de un CDN (ya sea en un subdominio o el uso de Amazon S3)
- Minifying javascript y css
- Optimizar manualmente las imágenes a las que EWWW no pueda tener acceso (como las imágenes de la plantilla, y cualquier imagen que no se ha subido a través de la biblioteca de medios)
- Re-dimensionar manualmente imágenes a sus dimensiones exactas, que han sido re-dimensionadas dinámicamente por un plugin / tema.
- Averigüa qué archivos de Javascript y CSS son grandes. Esto te ayudará a decidir si vale la pena tener ese plugin / tema / widget o reemplazarlo con algo menos pesado o reducirlo desactivaándolo desde “Plugin Organizer” y sólo habilita ese plugin en posts que realmente lo necesiten, etc. (especialmente vale haciéndolo por Facebook, Twitter y otros plugins relacionados Social Media)
- Convertir imágenes repetitivas individuales en una sola imagen sprite.
- Elimina todos los archivos de registro innecesarios desde el backend de WordPress. Estos serían registros largos como los de Akismet, Link-Seguimiento, o registros de cualquier otro plugin al que normalmente no miras.
- Instalar Exploit Scanner. Una vez finalizado el escaneo, desactivar y eliminarlo. (Por lo general, sólo se haría esto si sospecha sitio ha sido comprometido, de lo contrario omita este paso).
- Configura Login Lockout, ajusta la longitud de bloqueo alta y los reintentos bajos, y redirige a la página de inicio en lugar de hacerles saber que introdujeron el nombre de usuario / contraseña incorrecta.
- Ir a cPanel> phpMyAdmin y hacer una reparación y optimización manual de la base de datos (realiza una copia de seguridad de tu base de datos primero si nunca lo has hecho antes). Mientras estás allí, echa un vistazo a la base de datos, buscar cualquier cosa que no deba estar allí y mira los tamaños de archivo de ciertas tablas (se ve todo bien o aparece alguna anormalidad?). Anota todo lo que necesite una investigación más profunda, y asegúrate de hacer una copia de la base de datos antes de hacer nada.
Todos los pasos anteriores deben cubrirse por completo cada vez que te enteras de que tu sitio está utilizando un alto nivel de recursos o si funciona lento en general. A continuación, el siguiente paso sería comenzar a investigar para encontrar la causa real de los problemas.
- Instalar Plugin P3 Profiler para ver qué plugins están usando más recursos y ver si alguno de ellos se puede eliminar o cambiar por un plugin más ligero o mejor codificado.
- Comprueba los errores 404 y observa si hay algo extraño allí que que sea necesario investigar (como miles de visitas a una página específica que no existe, visitas a páginas de administración, etc).
- Si están apuntando a un archivo que no existe pero que sí debería existir, es necesario arreglarlo.
- Si están apuntando a un archivo que no existe, nunca existió y que no tienen idea de lo que podría ser pero parece sospechoso, se debe añadir una redirección 301 para enviarlos a otro lugar.
- Si están apuntando a páginas de administración, es necesario asegurar tu sitio, encontrar sus IPs y bloquearlas.
- Si están apuntando a exploits conocidos (TimThumb, etc.), asegúrate de que tus plugins se encuentren actualizados, investiga sobre ese exploit en particular (googlealo) y ve lo que puedes hacer para evitar que accedan a éste.
- Revisa tus AWstats de cPanel y ve cuáles son las direcciones IP de los Visitantes “Top” y “Top” Robots / Spiders. Bloquea las direcciones IP sospechosas (hacer una ip-lookup de cada una o incluso mejor, haz la búsqueda utilizando Project Honeypot). También puedes utilizar:
- SpyderSpanker (esto también hará la búsqueda en Honeypot y automáticamente bloqueará a los intrusos)
- IP Filter Plugin
- Directamente desde tu cPanel > IP Deny Manager
- Puedes intentar bloquearlos desde tu archivo robots.txt pero eso es generalmente inútil
- Puedes bloquear direcciones IP directamente en tu archivo .htaccess
- Encienda el archivado de registros de acceso RAW (cPanel > Raw Access Logs > Archive every 24 hours).
- Luego descargar los registros de acceso RAW y ver si hay alguna pista de por qué el sitio está utilizando demasiados recursos.
- Revisa el registro de errores en cPanel > Administrador de Archivos. Los registros de errores en directorios específicos también pueden ayudar a encontrar la causa:
./wp-admin/error_log te ayudará a encontrar los errores internos de WordPress
./wp-content/themes/your-theme-name/error_log te ayudará a encontrar los errores relacionados con el tema instalado
./public_html/error_log es el registro de errores principal, etc. - Verifica que no haya registros de errores modificados en el Administrador de Archivos de cPanel (ordenar por fecha para ver cuando fueron modificados por última vez) para encontrar alguna pista (advertencias PHP, errores de base de datos, etc.).
Si has probado todo lo anterior, y todavía no has podido descubrir qué es lo que está generando los picos en el consumo de recursos o si tu sitio todavía está funcionando lento, puedes probar estos controles finales.
- Cambia los casilleros de registro hacia un tercero como Aweber/Mailchimp, etc. en lugar de utilizar el autoresponder o plugin disponibles por default en tu cPanel panel.
- ¿Tienes alguna imagen grande en tu sitio / posts? Incluso si se encuentran en el servidor y no en posts / páginas, Google Images y la gente todavía pueden ‘encontrarlas’ y descargarlas / verlas, lo cual utiliza recursos del servidor. Puedes utilizar cPanel > Administrador de archivos o un programa FTP para ver los archivos en tu cuenta y ordenarlos por tamaño. Entonces, mira los archivos más grandes para ver si hay alguno del que puedas prescindir y eliminar. En caso de todavía precisarlos, puedes cambiarles el tamaño y optimizarlos con la RIOT Image Optimizer.
- Valida tu sitio en W3C.
- Retira todos los iconos de medios sociales que no son necesarios / utilizados.
- Hospeda tu correo en otro lugar (Google Apps / Gmail) en lugar de utilizar la cuenta del servidor. (Tu e-mail cuenta en el uso de los recursos).
- Retira cualquier widget en tu sitio web que no sea necesario (considera la desactivación de los widgets de pie de página de forma completa).
- Asegurate de que archivos multimedia como videos y MP3 estén alojados en otro lugar (como YouTube).
- Cambia la cantidad de mensajes que se muestran en las páginas de cada categoría.
- Reemplace las imágenes externas con imágenes internas, si es posible (algunos plugins lo hacen imposible).
- ¿Tienes algún slider en la página de inicio? Considera la posibilidad de retirar algunas imágenes / videos del slider para aligerar la carga de la página principal.
- Optimiza de el sitio con CloudFlare (desde la opción de cPanel) lo cual ayuda a bloquear el tráfico malicioso si existe.
- ¿Tienes grandes archivos alojados en tu cuenta que has subido para que otros puedan descargar? Si es así, considera mover esos archivos a Amazon S3 o un sitio web de intercambio de archivos en lugar de tener que descargarlo directamente desde tu sitio.
Si has llegado hasta aquí, tu sitio probablemente corra mucho más rápido ahora y seguramente utilice muchos menos recursos, ¡enhorabuena! 🙂