Drupal (Español)
De Wikipedia:
- Drupal (pronunciación IPA en inglés: [druː pʰʊɫ]) es un sistema de gestión de contenidos1 o CMS (por sus siglas en inglés, Content Management System) libre, modular, multipropósito y muy configurable que permite publicar artículos, imágenes, archivos y que también ofrece la posibilidad de otros servicios añadidos como foros, encuestas, votaciones, blogs, administración de usuarios y permisos.
- [...]
- Es un programa libre, con licencia GNU/GPL, escrito en PHP, combinable con MySQL, desarrollado y mantenido por una activa comunidad de usuarios. Destaca por la calidad de su código y de las páginas generadas, el respeto de los estándares de la web, y un énfasis especial en la usabilidad y consistencia de todo el sistema.
Este artículo describe cómo configurar Drupal y Apache, MySQL o PostgreSQL, PHP y Postfix para trabajar con él. Se da por hecho que tiene algún tipo de servidor LAMP (Linux, Apache, MySQL, PHP), LAPP (Linux, Apache, PostgreSQL, PHP) o LASP (Linux, Apache, SQLite, PHP) ya configurado.
Instalación
Configuración
PHP
Edite /etc/php/php.ini
:
- Para habilitar el soporte para la manipulación de imágenes, descomente la línea
extension=gd
Para el soporte de bases de datos, habilite una extensión PDO para su base de datos
- Para habilitar el soporte para SQLite, descomente la línea
extension=pdo_sqlite
- Para habilitar el soporte para MySQL, descomente la línea
extension=pdo_mysql
- Para habilitar el soporte para PostgreSQL, descomente la línea
extension=pdo_pgsql
Apache fallará al intentar iniciarse y mostrará un error al encontrar php_admin_value. A continuación se detalla la solución a este problema:
Instale el paquete php-apache.
En /etc/httpd/conf/httpd.conf
, comente la línea:
#LoadModule mpm_event_module modules/mod_mpm_event.so
y descomente la línea:
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
Coloque esto al final de la lista LoadModule
:
LoadModule php7_module modules/libphp7.so AddHandler php7-script .php
Coloque esto al final de la lista Include
:
Include conf/extra/php7_module.conf
Reinicie httpd.service
usando systemd.
Apache fallará al intentar iniciarse y mostrará un error al encontrar open_basedir. A continuación se detalla la solución a este problema:
En /etc/php/php.ini
, descomente y añada el sufijo open_basedir
para que tenga este aspecto:
open_basedir = /etc/webapps
Apache
Copie el ejemplo del archivo de configuración de Apache:
# cp /etc/webapps/drupal/apache.example.conf /etc/httpd/conf/extra/drupal.conf
E inclúyalo en la parte inferior de /etc/httpd/conf/httpd.conf
:
Include conf/extra/drupal.conf
En /etc/httpd/conf/httpd.conf
, descomente también la línea LoadModule rewrite_module modules/mod_rewrite.so
.
Drupal
Edite /usr/share/webapps/drupal/.htaccess
y reemplace Require all denied
por Require all granted
.
Finalmente, reinicie Apache (httpd.service
). Ahora puede acceder a la instalación de Drupal en http://localhost/drupal .
Herramientas de la línea de comandos
Drush
Drush es un shell de línea de comandos y una interfaz de scripting Unix para Drupal. El núcleo Drush se suministra con una gran cantidad de comandos útiles para interactuar con el código, como módulos/temas/perfiles. Del mismo modo, ejecuta update.php, ejecuta consultas de sql y migraciones de base de datos, y otras utilidades como ejecutar Cron o borrar la caché. Drush se puede ampliar por archivos de comandos de terceros. Se puede instalar con el paquete drushAUR[enlace roto: package not found].
Drupalconsole
Drupalconsole es una herramienta CLI para generar código cliché, interactuar y depurar Drupal 8. Se puede instalar con el paquete drupalconsoleAUR.
PHP-Codesniffer-Drupal
PHP-Codesniffer-Drupal revisa su código Drupal contra los estándares de codificación y otras mejores prácticas. Se puede instalar con el paquete php-codesniffer-drupalAUR.
Consejos y trucos
Enviar correos
Drupal necesita un MTA compatible con Sendmail como por ejemplo Sendmail, Postfix o Exim si planea enviar correos desde su configuración local. Alternativamente, existen múltiples soluciones para enviar correos mediante servidores de correo externos a través de SMTP u otros medios como SMTP o PHPMailer. Utilice la página de búsqueda para encontrar más posibilidades.
Programación con Cron
Drupal recomienda ejecutar los trabajos Cron a cada hora. Cron puede ejecutarse desde el navegador web visitando http://localhost/drupal/cron. También es posible ejecutar Cron a través de un script copiando el archivo apropiado de la carpeta "scripts" a /etc/cron.hourly
y haciéndolo ejecutable.
El progreso de la subida no está habilitado
Tras una correcta instalación, podría ver el siguiente mensaje en el informe de estado:
Your server is capable of displaying file upload progress, but does not have the required libraries. It is recommended to install the PECL uploadprogress library (preferred) or to install APC.
Primero, instale el paquete php-pearAUR. A continuación, utilize la orden pecl para descargar, compilar e instalar automáticamente la librería:
# pecl install uploadprogress
Finalmente, agregue lo siguiente a /etc/php/php.ini
extension=uploadprogress
Reinicie Apache.