Drupal 8: Difference between revisions
(Página acerca de cómo configurar un drupal 8, resultado del taller que hicimos en Calafou, con objetivo de prepararnos para desarrollar la web nueva de Calafou.) |
No edit summary |
||
Line 5: | Line 5: | ||
Lo segundo a hacer es instalar drush. Drush es una especie de navaja suiza, un asistente para drupal 8 que permite hacer una cantidad importante de operaciones de mantenimiento y configuración desde línea de comando. Una vez empiezas a usarlo no hay marcha atrás: | Lo segundo a hacer es instalar drush. Drush es una especie de navaja suiza, un asistente para drupal 8 que permite hacer una cantidad importante de operaciones de mantenimiento y configuración desde línea de comando. Una vez empiezas a usarlo no hay marcha atrás: | ||
# http://docs.drush.org/en/master/install/ | #http://docs.drush.org/en/master/install/ | ||
wget http://files.drush.org/drush.phar | wget http://files.drush.org/drush.phar | ||
php drush.phar core-status | php drush.phar core-status | ||
Line 43: | Line 43: | ||
Lo primero es añadir un nombre de dominio para trabajar cómodamente: | Lo primero es añadir un nombre de dominio para trabajar cómodamente: | ||
# vi, gedit, sublime, nano, atom, brackets... lo que sea | #vi, gedit, sublime, nano, atom, brackets... lo que sea | ||
sudo vi /etc/hosts | sudo vi /etc/hosts | ||
# Añadimos esta línea: 127.0.0.1 d8.local | #Añadimos esta línea: 127.0.0.1 d8.local | ||
Y ahora tenemos que añadir la configuración del virtual host a apache: | Y ahora tenemos que añadir la configuración del virtual host a apache: | ||
Line 71: | Line 71: | ||
Tenemos dos opciones: | Tenemos dos opciones: | ||
# Dejamos el archivo que viene con drupal y damos permiso desde el archivo de configuración anterior | |||
para que este pueda sobreescribirlo. | para que este pueda sobreescribirlo. | ||
# Incluimos todos los contenidos del archivo anterior en la conf y borramos el htaccess. | |||
La aconsejable es la segunda porque quitamos un poquito de sobrecarga al servidor, pero los dos son válidos.ç | La aconsejable es la segunda porque quitamos un poquito de sobrecarga al servidor, pero los dos son válidos.ç | ||
# | |||
<VirtualHost *:80> | <VirtualHost *:80> | ||
Line 92: | Line 92: | ||
</VirtualHost> | </VirtualHost> | ||
# B | |||
<VirtualHost *:80> | <VirtualHost *:80> |
Revision as of 18:47, 1 March 2016
Lo primero es comprobar que cumplimos los requerimientos de PHP en el servidor. Drupal 8 es un software reciente y necesita una versión de PHP actual que soporte las nuevas características del lenguaje. Ver: https://www.drupal.org/requirements/php#8
Drush Lo segundo a hacer es instalar drush. Drush es una especie de navaja suiza, un asistente para drupal 8 que permite hacer una cantidad importante de operaciones de mantenimiento y configuración desde línea de comando. Una vez empiezas a usarlo no hay marcha atrás:
wget http://files.drush.org/drush.phar php drush.phar core-status chmod +x drush.phar sudo mv drush.phar /usr/local/bin/drush drush init
Descargar drupal 8 Usamos drush para ello. 'dl' es el comando de drush que sirve para descargar el core y módulos de drupal. Las buenas prácticas aconsejan que la raíz del proyecto no sea la raíz de la web. Sino que ésta última sea una subcarpeta llamada public_html. De esta manera tenemos la web y una carpeta raíz inaccesible desde fuera, donde podemos guardar backups, archivos temporales, archivos de configuración, etc. Nos vamos a /var/www, creamos una carpeta para nuestro proyecto (por ejemplo d8 y descargamos el core dentro):
mkdir d8 && cd d8 drush dl drupal-8
Renombramos la carpeta que hemos descargado a public_html y ya tenemos el esqueleto de la web.
Configuración previa a la instalación y política de permisos
Previo a ejecutar el script de instalación hemos de hacer unos pasos previos: 0- Ajustamos permisos para que el drupal sea seguro. Para ello tenemos que poner como propietario de todos los archivos a nuestro user y como grupo a www-data (apache). Una vez hecho eso quitamos permisos de escritura a apache sobre todos los archivos:
sudo chown mi-usuario:www-data /var/www/d8/public_html -R sudo chmod g-w /var/www/d8/public_html -R
Nos vamos a sites/default y copiamos el archivo default.settings.php a settings.php. En la misma carpeta creamos la carpeta files y añadimos permisos de escritura sobre files y settings a apache:
cd /var/www/d8/public_html/sites/default/ cp default.settings.php settings.php mkdir files sudo chmod g+w files settings.php
Configurar el virtual host
Lo primero es añadir un nombre de dominio para trabajar cómodamente:
- vi, gedit, sublime, nano, atom, brackets... lo que sea
sudo vi /etc/hosts
- Añadimos esta línea: 127.0.0.1 d8.local
Y ahora tenemos que añadir la configuración del virtual host a apache: Nos vamos a /etc/apache2/sites-available y copiamos el archivo que viene de ejemplo:
cd /etc/apache2/sites-available sudo cp 000-default.conf d8.local.conf #no es mala idea poner la ruta como nombre para evitar equívocos
Una vez allí configuramos para que la ruta d8.local apunte a la carpeta que hemos creado y ponemos un nombre correcto a los logs de apache (en /var/log/apache2):
sudo vi d8.local.conf
Editamos el archivo y ponemos esto:
<VirtualHost *:80>
ServerName d8.local DocumentRoot /var/www/d8/public_html ErrorLog ${APACHE_LOG_DIR}/d8.error.log
CustomLog ${APACHE_LOG_DIR}/d8.access.log combined </VirtualHost>
Configurar htaccess
.htaccess es un archivo que permite la sobreescritura local de las configuraciones de apache. Tenemos dos opciones:
- Dejamos el archivo que viene con drupal y damos permiso desde el archivo de configuración anterior
para que este pueda sobreescribirlo.
- Incluimos todos los contenidos del archivo anterior en la conf y borramos el htaccess.
La aconsejable es la segunda porque quitamos un poquito de sobrecarga al servidor, pero los dos son válidos.ç
<VirtualHost *:80>
ServerName d8.local DocumentRoot /var/www/d8/public_html
#Añadimos esto: <Directory /var/www/d8/public_html> order allow, deny AllowOverride all </Directory> ErrorLog ${APACHE_LOG_DIR}/d8.error.log CustomLog ${APACHE_LOG_DIR}/d8.access.log combined
</VirtualHost>
- B
<VirtualHost *:80>
ServerName d8.local DocumentRoot /var/www/d8/public_html
#Añadimos esto: <Directory /var/www/d8/public_html> # Contenidos del archivo .htaccess </Directory> ErrorLog ${APACHE_LOG_DIR}/d8.error.log CustomLog ${APACHE_LOG_DIR}/d8.access.log combined
</VirtualHost>