Ya habíamos escrito aquí sobre la actualización de seguridad de Wodpress (2.3.2) y su nueva característica, el llamado a un archivo db-error.php cuando existan problemas de conexión de Wordpress con la base de datos.
Andrés Nieto publicó un ejemplo para ese archivo, del cual señalo dos cuestiones importantes, que no se ejecute el código previsto en caso de error de conexión con la base de datos en caso de que sea llamado el script de manera autónoma, por ejemplo, por un usuario curioso; el segundo punto es que ese script puede servir para realizar avisos al administrador del blog cuando ocurran dichos errores de conexión.
Sin embaro el código de ejemplo no contempla, para el caso de los avisos por mail al administrador, que se enviará un mensaje cada vez que sea ejecutado dicho script. Digamos que se cae el servidor de la base de datos, y Wodrpess falla y cada vez que un usuario pretenda abrir las páginas del blog, aparecerá el mensaje de error de db-error.php y un correo electrónico de aviso es enviado al administrador. Podría entonces recibir el administrador decenas, cientos o miles de correos electrónicos mientras atiende el problema.
Este script no contempla el uso de páginas guardadas en caché para que el error de acceso a base de datos pase un poco inadvertido al usuario como lo propone Andrés Nieto porque no creo que sea buena idea poner al usuario páginas cacheadas que son inútiles para publicar comentarios y porque creo que si el administrador recibe avisos del error por mail, deberá estar al tanto de una rápida corrección del error para que el sitio esté funcional al 100% en el menor tiempo posible. Aunque sería interesante hacer uso de las páginas cacheadas dentro de un frame especial, en donde siempre aparezca hasta arriba o hasta abajo un mensaje al usuario indicando que está viendo páginas cacheadas y que algunas funcionalidades del sitio podrían estar fuera de servicio temporalmente… en fin…
El script que a continuación propongo, realiza una comprobación de la fecha en la que fue enviado el último mensaje al administrador, para evitar que le sea enviado más de 1 correo electrónico al día. El dato de la fecha del último mensaje enviado es almacenado en un archivo de texto.
Aquí está el paquete, se distribuye bajo licencia GNU e incluye instrucciones. Comentarios o preguntas, a través de comentarios en este mismo post (así los demás se benefician de las preguntas y respuestas dadas a otros). Si mejoran este script les agradeceré me platiquen sobre ello en este mismo post y si gustan pueden enviarme su script a montfort@tuxicodine.net.
Espero que les sirva



















