lunes, 17 de octubre de 2016

Drupal: Instalación Local de la versión 7 en [K]Ubuntu


El siguiente post presenta el procedimiento para instalar de manera local el Gestor de Contenidos Drupal 7 en Kubuntu 11.10, pero los pasos a continuación deberian ser válidos para cualquier variante de Ubuntu e incluso para Debian.

Es posible incluso que el procedimiento con pocos (o ningún cambio) también sirva para otras versiones de este excelente gestor de contenidos, osea Drupal :D. No incluyo la parte propia del Asistente de Instalación Web porque me parece demasiado intuitivo como para explicarlo, pero si alguien tiene algún problema que lo posteé para ver que se puede hacer ;)

Manos a la obra: 
Instalar los paquetes necesarios para tener funcional un entorno AMP (Apache + MySQL + PHP), se incluyen también el paquete GD de php e imagemagick para el manejo de gráficos.
apt-get install apache2 php5 libapache2-mod-php5
apt-get install mysql-server mysql-client php5-mysql 
apt-get install php5-gd imagemagick
Descargar la última versión de Drupal desde http://drupal.org/project/drupal
wget http://ftp.drupal.org/files/projects/drupal-7.10.zip
Copiar el archivo descargado al directorio donde se instalará finalmente Drupal, descomprimir y renombrar el directorio resultante
cp drupal-7.10.zip /var
cd /var
unzip drupal-7.10.zip
mv drupal-7.10 drupal7
Opcionalmente, podemos eliminar el archivo comprimido
rm drupal-7.10.zip
Descargar en el directorio respectivo la Traducción al Español de Drupal desde http://localize.drupal.org/translate/languages/es
cd /var/drupal7/profiles/standard/translations
wget http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.10.es.po
Modificar el archivo de hosts, para crear un host que facilitará el acceso de forma local
nano /etc/hosts
Y agregamos una línea como la que sigue:
127.0.0.2       drupal7.iknaxio.net     drupal7
Configurar el Apache para crear un dominio virtual para Drupal a partir del sitio por default
cd /etc/apache2/sites-available/
cp -p default drupal7                                                                                                                                
nano drupal7
Colocar dentro del archivo lo siguiente
<VirtualHost *:80>
       ServerName drupal7.iknaxio.net
       ServerAdmin webmaster@iknaxio.net
       DocumentRoot /var/drupal7
       <Directory /var/drupal7/>
               Options Indexes FollowSymLinks MultiViews
               AllowOverride All
               Order allow,deny
               allow from all  
       </Directory>

       LogLevel warn
       ErrorLog ${APACHE_LOG_DIR}/drupal7.error.log
       CustomLog ${APACHE_LOG_DIR}/drupal7.access.log combined
</VirtualHost>
Habilitar el virtual host recién creado
a2ensite drupal7
  • Nota: El comando anterior es lo mismo que:
    cd ../sites-enabled/
    ln -s ../sites-available/drupal7 001-drupal7
    
Habilitar en Apache el modulo 'rewrite' para el uso de URL's amigables y el módulo 'headers' para el uso de compresión en archivos JS y CSS
a2enmod rewrite
a2enmod headers
Reiniciamos el Servicio del Apache
/etc/init.d/apache2 restart
Crear la Base de Datos denominada 'drupal7'
mysqladmin -u root -p create drupal7
Crear el usuario 'userd7' con contraseña 'passuserd7' que se conectará desde 'localhost' y que tendrá permisos de 'SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER' para la base de datos recién creada.
mysql -u root -p
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
   -> ON drupal7.*
   -> TO 'userd7'@'localhost' IDENTIFIED BY 'passuserd7';
Volver al directorio donde se instalará Drupal
cd /var/drupal7
Asignar permisos globales de escritura al directorio de nuestro sitio Drupal, SOLO MIENTRAS DURE LA INSTALACIÓN
chmod a+w sites/default
Crear el archivo de configuración de nuestro sitio Drupal a partir del archivo que viene por default.
cp sites/default/default.settings.php sites/default/settings.php
Asignar permisos globales de escritura al archivo de configuración de nuestro sitio Drupal, SOLO MIENTRAS DURE LA INSTALACIÓN
chmod a+w sites/default/settings.php
Ahora sí, ya estamos listos para arrancar el instalador vía web: En un navegador cargamos nuestro la URL de nuestro sitio Drupal para realizar la instalación:
http://drupal7.iknaxio.net
Como dicen en mi tierra: "De aquí para adelante, ya todo es pampa". Se nos pedirá los datos de la base de datos, user y pass, y los datos de nuestro nuevo sitio, así que voy a omitir esa parte, porque es sumamente sencilla.

Una vez que el Asistente de Instalación ha culminado con éxito, restringimos los permisos globales de lectura que aplicamos al directorio del sitio y el archivo de configuración.
chmod go-w sites/default/settings.php
chmod go-w sites/default
Espero que les sea de utilidad! ;)

"Transporta un puñado de tierra todos los días y construirás una montaña" - Confucio