Archivo de la etiqueta: cakephp

Instalando CakePHP a lo ninja…

Las cosas nunca son como uno espera cuando instalas cosas como CakePHP, Django, Rails, Grails u otras tantas. Intenté hacer correr CakePHP en una máquina con Ubuntu 9.04, pero luego de instalar los paquetes cakephp, cakephp-instaweb y cakephp-scripts todo se tranformó en una negra mañana. Varado en medio de la nada, procedí a desinstalar los debs citados y me propuse seguir el camino ninja. Para quien le sirva, estos son los pasos:

1. Verificar que tu máquina esté funcionando con los requisitos de CakePHP. En mi caso Apache, PHP, MySQL. Consulta la documentación de CakePHP para ver otras opciones de servidores y bases de datos. De aquí en adelante todo va apuntado según un equipo con LAMP (Ubuntu 9.04).

2. Descargar la última versión de CakePHP desde el sitio oficial.

3. Descomprimir el archivo de CakePHP y dejarlo en tu servidor con un nombre más simple que el que trae, por ej. sólo cake. Tu directorio de servidor debería ser /var/www/, por supuesto, como dice el Sr. Fabián. Si apuntas ahora tu browser a http://localhost/cake/ verás una página de texto con varios errores y alarmas, bien fea. En los siguientes pasos iremos arreglando los errores uno por uno.

4. Busca el directorio /cake/app/tmp/ y otórgale permisos de escritura para todos.

5. Crea una base de datos, que en este caso vamos a usar para ver si CakePHP se conecta y que luego puedes seguir usando para tus aplicaciones. Supongamos que le pusiste como nombre… cake. Como ves, estamos muy originales hoy. Tienes que tener también el usuario creado en MySQL que va a poder acceder a la base de datos cake. Le llamaremos ninja, con password pastel. Si trabajar por consola en la base de datos te da muchos dolores de cabeza, puedes optar por instalar phpmyadmin y manejar desde ahí todas tus bd. En Ubuntu 9.04, se instala desde los repositorios y corre bien.

5. Anda al directorio /cake/app/config/ y cambia el nombre del archivo database.php.default a sólo database.php, es decir bórrale el default. Ahora abre este archivo database.php con tu editor favorito y ve al final para configurar la conexión a la base de datos. Eso debería quedar así, según lo visto en el paso anterior:

class DATABASE_CONFIG {

var $default = array(
‘driver’ => ‘mysql’,
‘persistent’ => false,
‘host’ => ‘localhost’,
‘login’ => ‘ninja’,
‘password’ => ‘pastel’,
‘database’ => ‘cake’,
‘prefix’ => ”,
);

var $test = array(
‘driver’ => ‘mysql’,
‘persistent’ => false,
‘host’ => ‘localhost’,
‘login’ => ‘ninja’,
‘password’ => ‘pastel’,
‘database’ => ‘cake’,
‘prefix’ => ”,
);
}

6. Ahora, abre el archivo core.php que está en el mismo directorio /cake/app/config/, y siempre en tu editor favorito -el mio es bluefish-, busca una línea, que debería estar por la 150, que luce más o menos así:

Configure::write(‘Security.salt’, ‘1YhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi’);

Bien, está claro que esta es una llave. Lo que tienes que hacer es cambiarle sólo un caracter, cualquiera, por ejemplo el 1, por un 2. Nada más, guardar y cerrar.

7. Ahora vamos al Apache. Primero, abre una consola y tira un sudo a2enmod rewrite. Luego vamos al directorio /etc/apache2/sites-enabled/ y editamos el fichero 000-default -que apunta al default del directorio sites-available- y le damos la propiedad AllowOverride All, así tal cual, a los <Directory /> donde se supone correrá el CakePHP. Esto viene por defecto como AllowOverride None, por lo que sólo se debe cambiar al None por All. Guardar, cerrar, y reiniciar Apache.

Ya está listo, si ahora apuntas el browser nuevamente a http://localhost/cake, debes ver la página de inicio de CakePHP, sin errores y correctamente formateada con estilos y colores.

Anuncios
Etiquetado