: )

Olas

Solucionar un contratiempo de una web hecha con Drupal

Una amiga me propone encargarme de una web que la hicieron con Drupal hace 3 años

Le presupuestaron 3.500€ y la cobraron 4.000€ al final entre unas cosas y otras. Lo curioso del tema es que se establecía que el "desarrollador" no actualizaría el sitio web. Ahí es cuando recurre a mi. Resulta que el sitio, lo primero que muestra la ventana del navegador al llegar a él es una pantalla roja indicando que el sitio está infectado por malware.

a Cacharrear

Desde el servicio técnico del hosting, la enviaron un mail con una serie de pasos a seguir. Y ahí es cuando empiezo a cacharrear.

  • Acceso al hosting
  • Creación de cuenta de FTP
  • Respaldo de la base de datos
  • Limpieza de los archivos infectados
  • Respaldo de los archivos
  • Configuración del servidor local IIS
  • Creación de sitio web, clon del de producción
    • Misma versión de PHP
    • Misma versión de Drupal
    • Misma versión de la base de datos mariaDB
    • Arreglos en el web.config
    • Modificación de la cadena de conexión

Y por fin tengo una copia del sitio funcionando en mi ordenador.

Primer contratiempo

Digo "primer contratiempo" por decir algo... Ya que hubo unos cuantos antes de este. Pero me refiero a cuando ya estaba funcionando en localhost. Resulta que google recaptcha no admite localhost y no sé desde que cuenta lo han configurado... Así que no me deja entrar en el panel de administración.

Solución: Se borra el módulo y se entra. Esto a su vez genera un aviso indicando que google recaptcha no se encuentra... Se restaura y ...SOLUCIONADO!!! 🙂

Pasos a seguir

Ahora que ya tengo una copia funcionando en localhost y antes de empezar a tocar nada, lo primero es hacer una copia de seguridad de lo que funciona y así cuando algo se fastidie, recuperar este punto de partida. Una vez que ya tenemos listas las copias de seguridad, procedemos a actualizar módulos, sobre todo aquellos que tenían una alerta de seguridad. Uno a uno para ver si alguno en especial "rompe" la web. Esto nos servirá para poder replicar la actualización en el servidor de producción.

Borramos la cache, ejecutamos cron, update, restauramos permisos... Y a seguir cacharreando, ahora en el servidor de producción.

Una vez que tenemos el sitio actualizado y sin virus, procedemos a notificárselo a google, para que retire el aviso de que el sitio está infectado.

Una vez esté todo actualizado, será el momento de modificar más cosas desde la ventana de administración.

Notificaciones push

Me ha parecido interesante probar esta "tecnología" y me he puesto a cacharrear; por eso verás que al entrar en la web te pregunta si quieres recibir notificaciones. Entre otras cosas, te avisaré cuando se publique algún artículo o bien actualice el contenido del alguno que ya hubiese escrito 🙂

Toda acción tiene una reacción

Lo que nos puede resultar simple como personas, puede afectar al rendimiento de una máquina.

Por ejemplo:

Imaginemos que necesitamos que los scripts se carguen al final de la página en lugar de al principio, para no ralentizar la carga.

La diferencia entre escribir unas líneas de código a usar un plugin vendrían a ser estas:

Con líneas de código:

¡Pon los scripts en el footer! (último valor de los parámetros de la carga de scripts en true)

Con un plugin:

Se carga la ventana de administración del plugin con sus opciones. En las que la lógica vendría a ser algo así:

Si el usuario selecciona la casilla "poner scripts en el footer", entonces: guardar el valor en una tabla nueva en la base de de datos.

Y para que funcione internamente...

Si en la base de datos recogemos el valor que nos indica que tenemos que poner los scripts en el footer, entonces: poner en true el último parámetro que carga los scripts.


Resulta, que la solución sencilla para el usuario estándar, es la de usar el plugin; cuando, si nos complicamos un mínimo la vida buscando por Internet, vemos que para obtener el resultado que queríamos, no necesitábamos un plugin. Y que todo ese proceso se podría resumir en unas pocas líneas.

Al final todo repercute.

Recuerdo que mi hermano mayor me dijo una vez al respecto de esos programas que había para liberar memoria del PC: "Consumen memoria". (Vaya paradoja; ponías algo con la intención de liberar recursos, que consumía recursos)

mens sana in corpore sano
subir