Aquesta és una guia ràpida per instal·lar una còpia de comesfa.org/guifi.net en un servidor web local de manera que estigui sincronitzada amb el subversion del bandoler, amb l'objectiu de fer-hi modificacions fàcilment.
1) Instal·lem els paquets següents: apache, mysql-server-5.0, php5, php5-mysql, libapache2-mod-php5, subversion
ATENCIÓ: Ens hem trobat que amb la branca 5.2 del php aquesta versió del drupal no gestiona correctament l'autenticació d'usuaris (a l'entrar amb el vostre nom d'usuari i contrasenya l'aplicació us deslogueja al següent clic que feu). Amb php 5.1 sembla que sí que funciona tot bé.
2) Descarreguem el CMS drupal. http://drupal.org/files/projects/drupal-4.6.3.tar.gz
3) Descomprimim els continguts del paquet en el DocumentRoot del nostre servidor (el podem veure al fitxer httpd.conf de l'apache). Suposant que és /var/www:
tar -zxvf drupal-4.6.3.tar.gz
mv drupal-4.6.3/* /var/www
Això s'ha de fer com a usuari apache o www-data, depenent dels permisos que tingui el directori /var/www.
4) Eliminem els directoris "themes" i "modules" de la instal·lació del drupal.
cd /var/www
rm -rf modules
rm -rf themes
5) Seguint al directori arrel del drupal (/var/www), fem un checkout dels directoris "themes" i "modules"
svn checkout --username anonymous https://svn.projectes.lafarga.cat/svn/guifi/comesfa_drupal46/modules modules/ (sense contrasenya)
svn checkout --username anonymous https://svn.projectes.lafarga.cat/svn/guifi/comesfa_drupal46/themes themes/ (sense contrasenya)
Això també s'ha de fer tenint permisos d'escriptura sobre el directori, per tant com a usuari apache o www-data altre cop.
6) Creem una base de dades i un usuari al servidor mysql pel CMS. Primer escrivim al shell: mysql. Des de la línia de comandes del mysql escrivim:
create database drupal;
grant all privileges on drupal.* to username@localhost identified by 'userpassword';
On "username" i "userpassword" són respectivament el nom d'usuari i la contrasenya del CMS.
7) Editem les variables següents de sites/default/settings.php en funció del lloc sobre el que vulguem treballar:
$db_url = 'mysql://username:userpassword@localhost/drupal';
$base_url = 'http://localhost/';
Per treballar amb el comesfa sencer:
$db_prefix = '';
Per treballar només amb guifi.net, escrivim:
$db_prefix = array(
'default' => '',
'blocks' => 'guifi_',
'permission' => 'guifi_',
);
8 ) Editem el fitxer httpd.conf de l'apache. Ens hem d'assegurar principalment del següent:
- Que el DocumentRoot estigui al directori /var/www o bé allà on haguem descomprimit el drupal.
- Que a la directiva AllowOverride dins del bloc <Directory /var/www> ... </Directory> estigui a "All" (per defecte està a "None")
- Que el DirectoryIndex contingui, entre d'altres, index.php.
post_max_size=20M
memory_limit=64M
max_execution_time=30
10) Apliquem un pegat al codi del drupal pel mòdul d'internacionalització:
cd /var/www/includes
patch < ../modules/i18n/patches/i18n_includes.patch
- Crear una nova estructura escrivint, als directoris "database" del drupal i de tots els mòduls:
mysql drupal < database/database.mysql
mysql drupal < modules/guifi/database/guifi.sql
mysql drupal < modules/i18n/i18n.mysql
etc.. - Importar una còpia de la base de dades del comesfa obtinguda amb mysqldump: (la podeu baixar de http://www.comesfa.org/cef.sql.gz i descomprimir-la)
mysql drupal < cef.sql - Netejar la cache del drupal escrivint delete from cache; a la línia de comandes del mysql (gràcies Carles! ;-))
12) Ens assegurem que l'apache tingui el mod_rewrite disponible. Per fer-ho, executem
a2enmod. Ens apareixerà un llistat de mòduls; escrivim "rewrite". Fent un ls /etc/apache2/mods-enabled ens hauria d'aparèixer, entre d'altres, un enllaç simbòlic cap a "/etc/apache2/mods-available/rewrite".
13) Reiniciem el servidor web amb /etc/init.d/./apache restart, o httpd restart. A http://localhost hauríem de tenir una còpia funcional de la pàgina web. Podem editar directament sobre "modules" i "themes" i mantenir-los sincronitzats amb el subversion del bandoler, discutir millores i enviar pegats a guifi-rd, etc...
Per poder fer un login de manera simple, l'md5 de "password" és 5f4dcc3b5aa765d61d8327deb882cf99
Nota: malgrat que el procediment descrit intenta ser el més exhaustiu possible, és possible que hi falti algun pas. Si teniu problemes o en descobriu algun, fóra bo que m'ho féssiu saber ;-)

