WordPress problema con acentos y tildes


Luego de actualizar a la última versión una instalación de wordpress con contenido en español que usualmente lleva acentos y tildes, empiezan aparecer caracteres no esperados. O al menos no deseados.

Revisando es posible observar que el contenido queda almacenado con acentos en la DB codificado.

Luego de bastante buscar, encontré un parámetro del archivo wp-config.php que no tenía antes: DB_CHARSET:

define('DB_CHARSET', 'utf8');

En el caso que vi se logra reparar el error tan sólo modificando la línea a lo siguiente:

define('DB_CHARSET', 'utf-8');

Asi es, pensé que era una broma pero no. Sin guión no toma el valor correcto.

GNU Linux:

Tux Teacher
Hace un tiempo tuve que preparar un curso sobre GNU/Linux. Lamentablemente no tengo “vocación” para la academia y tengo mucho respecto por aquellos que han estudiado para la pedagogía. Ahora, tampoco estaría educando niños de 5 años como para marcar el destino de sus vidas. Pero en fin, me metí en esto con mucho respeto.

El gran retorno que obtuve fue un repaso “forzoso” de conocimientos que tuve que recuperar del rincón de un cajón. Ese rincón donde están los papeles que si no te das cuenta terminas botándolos a la basura. Preparar este curso me sirvió para recuperar esos “papeles”.

Ha pasado harto tiempo y hoy decidí publicar este trabajo para aportar con un grano de arena a aquellos que quieren aprender.

Voy a ir publicando de a una cada presentación de este curso que ahora supongo que debe llamarse “tutorial”…

Incluiré la reseña histórica y la presentación porque nunca está demás.

tips: copia con tar y ssh

Es posible copiar un directorio de forma recursiva con muchos archivos a traves de la red usando ssh y tar para mantener los permisos y modos de cada archivo y directorio. La primera opción sería generar un tar primero en la maquina de origen y luego transferirlo a la maquina de destino para finalmente desempaquetar el archivo. Sin embargo, todo esto se puede hacer en una linea:

ssh usuario@origen "tar -cvf - /usr/share/request-tracker3.4/" |tar -xvf -

Consiste básicamente en empaquetar con tar (mediante ssh un comando remoto en el servidor origen) y enviar los datos al standar output en ves de a un archivo .tar, luego generar un pipe al comando tar en el equipo local que desempaquetará lo que le llega por el standar input
Nota: El comando es ejecutado en la máquina destino con $PWD en el directorio destinado.

root@destino:/usr/data/request_tracker# pwd
/usr/data/request_tracker

Cambio de password manual en mediawiki

Hace un tiempo comencé a usar MediaWiki para consolidar algo de información. Por distintas circunstancias debí ingresar como admin. Lamentablemente el admin que instaló el sistema ya no estaba y no había documentos ni historia del tema.

Lo primero que se me ocurrió fue hacer un update directamente a la tabla de usuarios cambiando el valor del campo user_password por el mismo texto (codificado) que tenía en mi password. No funcionó, ya que Mediawiki utiliza una combinación de operaciones y la función hash MD5 para generar un string. Al momento de login, utilizando el password que ingresa el usuario y esta función, se genera un string que debe coincidir con el almacenado en la tabla.

La función incluye el ID del usuario por lo tanto dicho string es válido sólo para ese usuario, o para algún otro valor de password que genere colisión con el valor original en el dominio de la función MD5, lo cual es poco probable.

En MySQL esto debiese funcionar así:

update user set user_password =  md5(concat('24-',md5('otrapassword'))) where user_id=24;

En este caso 24 es el user_id del usuario en cuestión. Esto es lo que hace dependiente del usuario la password y la función.

Lidiando con mod_rewrite

Si hay algo complejo en apache, es el modulo mod_rewrite. Este modulo permite hacer un sinfin de cosas manipulando URIs. En combinación con .htaccess, WordPress hace la magia del cambio de las URLs que aparecen cuando uno hace click en algún link.

Para uno que no estaba acostumbrado a esto es un poco complicado manejarlo al principio.

Acá van algunos consejos que peuden servir para quien esté lidiando con este feature de WordPress y apache.
Continue reading “Lidiando con mod_rewrite”