Lost in traslation

Pido disculpas desde ya por haber dejado un poco desatendido el blog, pero entre el blog de Software Libre de la Universidad de Deusto, que me sirve de opinódromo, y la migración del servidor de mi casa a godaddy, que me ha forzado a hacer más tareas de administración (backups de bases de datos con cambios de “encoding” de por medio, configuración de mod_rewrite en godaddy, intento frustrado de instalar dotclear 2.0 en lugar de dotclear 1.2, etc.), es cierto que no he aparecido mucho por aquí. Supongo que no os interesará mucho, pero en este artículo os contaré un poco qué he ido haciendo para migrar…

Exportar la base de datos MySQL del blog

En godaddy todavía usan un vetusto MySQL 4.0.x y en el servidor de casa, después de ir migrando desde MySQL 3.3.x hasta MySQL 5.0.x ya no sabía ni lo que tenía, así que a la hora de hacer el mysqldump hubo unos pocos problemas:

  1. Diferentes charsets en las bases de datos.
  2. Diferentes versiones, diferente SQL.
  3. Comentarios no soportados a la hora de importar la base de datos.

Todos los problemas se resuelven fácilmente:

  1. El charset, utilizando la opción –default-character-set al exportar y usando iconv para pasar de un charset a otro.
  2. Las versiones de MySQL, usando la opción –compatible=mysql40.
  3. Los comentarios, con sed o el propio vi.

Así pues, la cosa quedaría de esta manera:

mysqldump --default-character-set=latin1 --compatible=mysql40 -u usuario -p > basededatos-latin1.sql

iconv -f iso-8859-15 -t utf8 basededatos-latin1.sql > basededatos-utf8.sql

sed -e "s/\/\*.*\*\///g" < basededatos-utf8.sql > basededatos-fin.sql

Con el sed lo que hago es sustituir el patrón /*algo*/ por nada (la cadena vacía), lo que pasa que como hay que escaparlo todo con \s queda un poco farragoso de entender.

Instalar dotclear 1.2

Realmente lo que yo quería era aprovechar y migrar a dotclear 2.0, pero dotclear 2.0 necesita MySQL 5.0.x y en godaddy todavía van por la 4.0.x 🙁 Así que me bajé el tarball de dotclear de su página web, lo descomprimí y lo subí a godaddy por FTP (leeeeento). Una vez subido, simplemente seguí los pasos de install.php y me dí cuenta de que tenía que importar previamente la base de datos recién exportada (lógico), así lo hice y todo funcionó bien. Bueno, todo no. Se veía la página principal bien, pero en cuanto pulsaba algún enlace para ver las entradas del blog, me daba un error 404 muy extraño. Investigando un poco ví que godaddy no tiene PHP como módulo, sino como un CGI, así que era necesario utilizar mod_rewrite del Apache para que todo funcionara bien.

Configurar mod_rewrite en godaddy

El módulo mod_rewrite te permite hacer muchas reescrituras de la petición realizada al servidor (si os queréis rayar de verdad, visitad la página de ayuda de mod_rewrite, muy ilustrativa). La verdad es que no me comí mucho el coco y directamente busqué cómo lo había hecho otra gente. Casi nadie usa dotclear, pero había muchos usuarios con un problema similar en WordPress y godaddy, así que copié un ejemplo de configuración, y funcionó. Además, aproveché para usar PHP5 en lugar de PHP4 en mis páginas, dejando un .htaccess como este:

AddHandler x-httpd-php5 .php
AddHandler x-httpd-php .php4

# BEGIN dotclear

RewriteEngine On
#RewriteBase /blog/
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule . /blog/index.php [L]

# END dotclear

Como se puede ver, toda la configuración de mod_rewrite está comentada (con #s) salvo RewriteEngine On. Al principio pensé que tenía que configurarlo específicamente para ese directorio en el servidor, tomar lo que me había pedido, pasárselo a index.php y demás, pero luego ví que mod_rewrite hacía todo eso él solito. Subí el .htaccess a mi directorio de hosting y… ¡listo! 🙂

7 pensamientos en “Lost in traslation

  1. Jack

    ¡Hola Txipi!
    Siempre es reconfortante bucear entre tus voces mudas llenas de interesantes palabras, y por la admiración que hace tiempo siento por todos tus proyectos que conozco -los vivos y los no despiertos actualmente-; me apetecería echar una cuerda de mis vocales y compartir parte de mis sonidos, de ser bienvenidos.

    Desde siempre me gustó cultivar la literatura, además de intentar saciar mis más humildes intereses científicos, y en general de todo aquello que despierte mi sueño.
    Hace tiempo leíste algo mío, aunque natural es que no lo recuerdes; creo que lo titulé Cyberpunk Literature, para un “concurso” de Eside. Además, he sido alumno tuyo en secreto; e incluso compartimos tarea en el antiguo Hackmeeting de leioa.

    Espero nos pongamos en contacto, y podamos intercambiar escritos.
    Un abrazo.

    Jack.

    P.D.: Decirte que, pese a mi siempre demasiada desorganización (mis notas “mediocres” son un ejemplo de ello), leeré con atención todas tus cosas que encuentre, pues las más recientes – lo cual puede remontarse a meses y meses- son aún para mí transparentes.

    Responder
  2. txipi

    Ey Jack! Ví tu comentario en el primer post del blog, pero he andado un poco vago contestando comentarios O:-)

    Claro que me acuerdo de ti, creo que cuando sustituí por unas semanas a Borja Sotomayor, estabas en la clase de Laboratorio de Informática, cuando dimos unas cuantas clases de C++.

    No sé si este año se vuelve a organizar el concurso de literatura futurista, pero si has escrito algo más, me gustaría leerlo ;-P

    Responder
  3. Civantoz

    Bueno, mira que bien que estés de vuelta, a ver si recuperas la marcha normal del blog, que los artículos que escribes son una pasada, para seguir paso a paso sin problemas y en cristiano como está mandado, fáciles de entender y nada de pedanterías jejeje 🙂

    Saludos!

    Responder
  4. txipi

    @Civantoz: joer, muchas gracias, me has alegrado la tarde 😉

    @MaY: supongo que un thread en eside-cafe hablando de estas cosas tendrá algo que ver, o es que el hecho de que se hayan pasado a IIS y hayan jodido el 70% de Apache en Internet nos da morbo y queremos contratar con ellos un Apache 😀

    Responder
  5. aktor

    Aupa txipi!!

    Joder yo también tengo pendiente una migración de estas que tengo mi pobre servidor de casa en coma cerebral… y ya estoy muy mayor para seguir cuidando de él… ahora como que tengo un montón de hijos que cuidar uno de cada ciudad, sexo, raza, ideología política… en fin…

    Igual es un poco tarde.. y tampoco tengo idea de por qué has decidido GD… pero si necesitas tienes un hosting gratuito para tus necesidades…. y he aquí mi invitación en público!!! Si no la aceptas me estarás haciendo un feo terrible, que lo sepas!!!!

    jajaja, un abrazo guapetón y a ver si nos vemos que con eso de que mi server anda al garete (y por ello las listas que nos unen) te tengo un poco olvidao (o tu a mi segun como se mire todo depende…)

    Responder
  6. txipi

    Aupa aktor!

    Si llego a saber tu oferta de hosting, la pillo sin dudar, porque solamente me he decidido por GD por el precio. El servicio no es que sea genial precisamente y las versiones de los programas que manejan son un poco arcaicas. Te tomo la palabra en cuanto decida buscarme un hosting majo ;-PPP

    A ver si organizamos alguna fiestecilla para vernos las caras IRL ;-P

    Responder

Responder a Jack Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *