en despuesdegoogle

Cómo instalar Mahara en local en Ubuntu

(La guía se ha realizado con Ubuntu 13.04 y Mahara 1.4.0, y después con Ubuntu 13.10 y Mahara 1.8.1. Está basada en la guía oficial de Mahara)

1. Instala Apache, PHP5 y MySQL
sudo apt-get install apache2 php5 php5-gd php5-xmlrpc php5-curl libapache2-mod-php5 php5-mysql mysql-server mysql-client

En el caso de optar por instalar LAMP (Linux + Apache + MySQL + PHP) con un solo clic:
# sudo apt-get install lamp-server^
debes instalar como mínimo los paquete php5-curl y php5-xmlrpc:
# sudo apt-get install php5-curl
# sudo apt-get install php5-xmlrpc

2. Crea los directorios y descarga Mahara (el ejemplo asume mahara como hostname y /srv como directorio de instalación):
cd /srv/
# sudo mkdir data www
cd www
# sudo wget http://launchpad.net/mahara/1.4/1.4.0/+download/mahara-1.4.0.zip

(sustituye la versión por la última disponible en https://mahara. org; en diciembre 2013 es la 1.8.1 y por tanto la dirección de descarga es https://launchpad.net/mahara/1.8/1.8.1/+download/mahara-1.8.1.zip)
# sudo unzip mahara-1.4.0.zip
# sudo rm mahara-1.4.0.zip
# sudo mv mahara-1.4.0 mahara

3. Crea la base de datos (el ejemplo asume maharadata como nombre de la base de datos; sustituye usuario y contraseña por tus valores):
# sudo mysql --user=root -p
[enter password]
create database maharadata character set UTF8;
grant all on mahara.* to 'usuario'@'localhost' identified by 'contraseña';
exit

(Puedes usar mahara como usuario y mahara como contraseña)
En ocasiones la asignación de permisos no me ha funcionado desde la terminal, y en este caso la instalación de Mahara devuelve un error inicial con aviso de que el usuario no puede acceder a la base de datos. Lo soluciono mediante phpMyadmin: basta seleccionar la base de datos maharadata (si ya la hemos creado; si no, la creamos), añadimos el usuario mahara (si no lo hemos hecho) y le otorgamos todos los privilegios.

4. Configura Apache. Añade el nuevo sitio como host virtual:
# sudo gedit /etc/apache2/sites-available/mahara.conf

Y copia en el archivo este código:
<VirtualHost *:80>
ServerName mahara
DocumentRoot /srv/www/mahara/htdocs
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /srv/www/mahara/htdocs/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
</VirtualHost>

Modifica el archivo /etc/apache2/apache2.conf para permitir el acceso al directorio. La sección Directory debe quedar así:
<Directory />
Options FollowSymLinks
AllowOverride None
Require all granted
Allow from all
</Directory>

Activa el sitio:
# sudo a2ensite mahara.conf

Reinicia Apache:
# sudo /etc/init.d/apache2 reload

5. Añade el nuevo hostname (el ejemplo asume que es mahara):
# sudo gedit /etc/hosts
Y añade la línea
127.0.0.1 mahara
para así poder acceder al sitio tipeando la dirección http://mahara

6. Configura Mahara
cd /srv/www/mahara/htdocs
# sudo cp config-dist.php config.php
# sudo gedit config.php

Cambia los valores siguientes:
$cfg->dbtype = 'mysql5';
$cfg->dbhost = 'localhost';
$cfg->dbport = null;
$cfg->dbname = 'maharadata';
$cfg->dbuser = 'mahara';
$cfg->dbpass = 'mahara';
$cfg->wwwroot = 'http://mahara/';
$cfg->dataroot = '/srv/data/mahara';

(Sustituye los valores dbuser y dbpass por los que has proporcionado a MySQL al crear la base de datos en el paso 3, si has elegido nombre de usuario y contraseña distintos)

Guarda el archivo.
Añade permisos de escritura al directorio donde se subirán los datos:
# sudo chown -R www-data:www-data /srv/data/mahara

7. Instala Mahara
Accede a la dirección http://mahara y sigue los pasos.

8. Añade idiomas
Accede a http://langpacks.mahara.org/ y descarga el paquete del idioma y versión que acabas de instalar de Mahara, descomprime y copia en el directorio /srv/www/mahara/htdocs/lang la subcarpeta es.utf8 (en el caso del idioma español)

9. Modifica los valores sugeridos en la fase final del proceso de instalación.
Típicamente:

Edita el archivo php.ini:
# sudo gedit /etc/php5/apache2/php.ini
y en la sección Data Handling cambia el valor de post_max_size, por defecto es 8. Puedes dejarlo en 32:
post_max_size = 32M

Edita el archivo config.php:
# sudo gedit /srv/www/mahara/htdocs/config.php
y asigna una frase secreta a passwordsaltaltmain, Por ejemplo:
$cfg->passwordsaltmain = 'dabale arroz a la zorra el abad';

Configura cron editando el archivo crontab (consulta información sobre las tareas del cron):
# sudo crontab -e
Elige nano como editor (es el más amigable de los tres que se ofrecen) y añade la línea
* * * * * curl http://su-sitio-mahara.org/lib/cron.php

Configura el correo (Administración -> Opciones -> Correo). En el caso de Gmail, uso smtp.gmail.com, puerto 465, SSL.
(Más datos también de otros proveedores como Yahoo o Hotmail)

deja tu comentario

Comentario