Como otro de tantos días, sin comerlo ni beberlo nos encontramos solucionando un error para el que no hay información detallada en internet, por lo que voy a exponer el problema, a pesar de que las posibles causas son un poco indefinidas. Vamos a ver cómo solucionar el error de wordpres que provoca la página de login en blanco y nos imposibilita conectar a nuestro blog.
El problema principal con el que nos vamos a encontrar, es que al tratar de hacer login en nuestro wordpress se queda la pantalla en blanco, lo cual imposibilita el administrar nuestro sitio de ninguna mantera. Vale que esto también es efectivo para evitar el spam o los ataques por fuerza bruta, pero tener un blog no administrable no suele ser una opción.
Seguramente nos pasará lo mismo si tratamos de entrar en la carpeta wp-admin, aunque de forma normal nos debería lanzar contra el formulario de conexión. En un pimer momento podemos pensar que se debe a algún plugin que hemos instalado, pero al parecer es algo más espontáneo, tu sitio funciona y de repente cuando te vas a volver a conectar deja de funcionar.
Cómo solucionar el error kses.php de WordPress
Este problema viene apareciendo desde hace ya bastantes años, buscando por internet he conseguido retroceder a casos de hace más de 8 años, por lo que parece ser algo más problema del servidor que hospeda los archivos, que del mismo wordpress en sí.
Para diagnosticar el problema y saber si exactamente es esto lo que nos está pasando, podemos desde nuestro servidor revisar los archivos con los logs de errores, en mi caso me encontré líneas similares a las siguientes (normalmente están en /var/logs/apache2 o /var/logs/httpd/):
[Tue Aug 04 15:37:06 2015] [error] [client 127.0.0.1] PHP Parse error: syntax error, unexpected »/^(«[^»]*(«|$)|\\'[^\\’]*(\\’|$)’ (T_CONSTANT_ENCAPSED_STRING) in /var/www/vichaunter.org/wp-includes/kses.php on line 1300, referer: https://www.google.com
[Tue Aug 04 15:37:10 2015] [error] [client 127.0.0.1] PHP Parse error: syntax error, unexpected »/^(«[^»]*(«|$)|\\'[^\\’]*(\\’|$)’ (T_CONSTANT_ENCAPSED_STRING) in /var/www/vichaunter.org/wp-includes/kses.php on line 1300
[Tue Aug 04 15:37:14 2015] [error] [client 127.0.0.1] PHP Parse error: syntax error, unexpected »/^(«[^»]*(«|$)|\\'[^\\’]*(\\’|$)’ (T_CONSTANT_ENCAPSED_STRING) in /var/www/vichaunter.org/wp-includes/kses.php on line 1300
[…]
y así líneas y líneas cada vez que trataba de conectar a mi sitio.
La solución a la que he llegado ha sido bastante sencilla, y es que parece ser que el archivo kses.php debía haber sufrido algún tipo de alteración, a pesar de que la fecha de última modificación del archivo era correcta.
Por lo tanto, deberemos ir a la web de descarga de wordpress www.wordpress.org, bajarnos la última versión (ignoro si el bajarlo en otro idioma puede provocar algún problema pero no debería), y sustituiremos el archivo de nuestro servidor
/wp-includes/kses.php
por el archivo del wordpress que nos acabamos de descargar. Curiosamente a partir de este momento debería empezar a funcionar perfectamente nuestra página de login y por tanto también la de administración, y a partir de aquí no darnos más problemas.
Al subir ese archivo y dejarlo con el usuario root parece funcionar correctamente sin dar ningún tipo de problema, por lo que quizás de esta forma nos aseguremos de que no se vuelva a modificar, aunque tendremos que acordarnos de cambiar el usuario y grupo cuando vayamos a actualizar wordpress.
¿Has tenido la pantalla blanca de la muerte? ¿Te ha funcionado el método?