You are on page 1of 12

Instal·lació de Drupal 8 sobre

CentOS 7
Configuracions prèvies de la màquina virtual del laboratori
del DSIC

Accés:
Usuari: root
Contrasenya: Dsic.2017

Actualitzar servidors de yum:


# yum clean all
# yum -y update (açò pot trigar uns minuts)

Instal·lar editor de text nano:

# yum install nano

Apache

Instal·lar Apache:

# yum -y install httpd

Donar accés cap a fora a Apache a través del tallafoc:

# firewall-cmd --permanent --add-port=80/tcp


# firewall-cmd --permanent --add-port=443/tcp
# firewall-cmd --reload

!1
Dins del fitxer de configuració d’Apache /etc/httpd/conf/httpd.conf,
canvia la línia següent:

<Directory “/var/www/html">
# Vàries línies de comentaris
# …
AllowOverride None
#…
</Directory>
Per
AllowOverride All

Arrancar Apache:
# systemctl start httpd

Fer que Apache arranque per defecte quan s’engega la màquina:

# systemctl enable httpd

MySql

Afegir repositori de yum: crear el fitxer /etc/yum.repos.d/mariadb.repo


amb el contingut:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/rhel7-amd64/
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Instal·lar MariaDB:
# yum install MariaDB-server MariaDB-client

Arrancar MySQL:
# systemctl start mysql

!2
Configurar permisos d’execució:
# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): [Polsar ENTER]
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] y


New password: [Entrar una contrasenya QUE NO OBLIDES. Pot ser la mateixa
que per al root de la màquina linux.]
Re-enter new password: [Torna a entrar la contrasenya]
Password updated successfully!
Reloading privilege tables..
... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone


to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y


... Success!

Normally, root should only be allowed to connect from 'localhost'. This


ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y


... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y


- Dropping test database...

!3
... Success!
- Removing privileges on test database...
... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y


... Success!

Cleaning up...

All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Comprova que la instal·lació ha estat correcta i que tens accés a mysql amb la
contrasenya que has entrar:

# mysql -u root -p

Enter password: escriu ací la contrasenya que has ficat abans


Welcome to the MariaDB monitor. Commands end with ; or g.
Your MariaDB connection id is 9
Server version: 5.5.34-MariaDB MariaDB Server

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.

Type 'help;' or 'h' for help. Type 'c' to clear the current input
statement.

MariaDB [(none)]> exit

PHP7

Instal·la els repositoris EPEL i Remi:

# yum install https://dl.fedoraproject.org/pub/epel/epel-


release-latest-7.noarch.rpm
# yum install http://rpms.remirepo.net/enterprise/remi-
release-7.rpm

!4
Instal·la yum-utils:

# yum install yum-utils

Instal·la PHP 7.2:


# yum-config-manager --enable remi-php72
# yum install php php-mcrypt php-cli php-gd php-curl php-mysql
php-ldap php-zip php-fileinfo

Instal·la llibreries de PHP necessàries per a executar Drupal 8:

# yum install php-mbstring


# yum install php-xml
# yum install php-opcache

Per completar la instal·lació, rearranca la màquina virtual.

A continuació, per tal de comprovar que PHP s’executa correctament a través


d’Apache crea el fitxer /var/www/html/phpinfo.php amb els següents
continguts:

<?php

// Show all information, defaults to INFO_ALL


phpinfo();

?>

Des del navegador de la màquina virtual (Firefox) accedeix a la URL


localhost/phpinfo.php. T’ha d’eixir una pàgina d’informació sobre la
instal·lació de PHP.

!5
Instal·lació de Composer
Composer és un paquet per a la gestió de llibreries en PHP. L’utilitzarem per
instal·lar mòduls i fins i tot per instal·lar instàncies de Drupal.

# php -r "copy('https://getcomposer.org/installer', 'composer-


setup.php');"
# HASH="$(wget -q -O - https://composer.github.io/
installer.sig)” [La O en ‘-O’ és una O majúscula.]
# php -r "if (hash_file('SHA384', 'composer-setup.php') ===
'$HASH') { echo 'Installer verified'; } else { echo 'Installer
corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

!6
Després d’aquest darrer comandament, hauria d’aparèixer en pantalla “Installer
verified”. A continuació:

# php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Instal·lació de Drupal 8

La darrera versió de Drupal 8 es pot descarregar des de l’URL https://


www.drupal.org/download

La creació d’un lloc web nou amb Drupal 8 consisteix en unes fases que podeu
seguir sempre que necessiteu crear un lloc nou. En un mateix servidor pot haver
múltiples llocs Drupal 8. Només cal
1. crear una base de dades nova per al lloc web,
2. descarregar els fitxers de Drupal 8; açò es pot fer manualment però ací ho
farem amb un instal·lador anomenat composer (més endavant),
3. configurar el lloc Drupal, incloent la connexió amb la base de dades.

Creació d’una base de dades per al lloc web


Convé posar un nom de base de dades i d’usuari, i una contrasenya que
recordes! En l’exemple a continuació hem utilitzat drupal1 com a nom d’usuari i
de la base de dades. Això es pot canviar (i cal canviar-ho si vols crear més d’una
base de dades per a més d’un lloc web Drupal):

# mysql -u root -p
Enter password: introducir la contrasenya de mySQL
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.63-MariaDB MariaDB Server

!7
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and
others.

Type 'help;' or '\h' for help. Type '\c' to clear the current
input statement.

MariaDB [(none)]> create database drupal1;


Query OK, 1 row affected (0.01 sec)

MariaDB [(none)]> create user drupal1@localhost identified by


'escriu ací una contrasenya';
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> grant all privileges on drupal1.* to


drupal1@localhost;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;


Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit


Bye

Rearranca mySQL:

# systemctl restart mysql

Creació d’una instància nova de Drupal 8


La instal·larem en my_site_name_dir, que ha de ser el subdirectori de /var/www/
html on voleu instal·lar Drupal, per exemple drupal1:

# composer create-project drupal-composer/drupal-project:8.x-


dev /var/www/html/my_site_name_dir --no-interaction

Cal donar permisos a Apache per accedir al nou directori:

chown -R apache:apache /var/www/html/my_site_name_dir

!8
Configuració de Drupal

Ara pots accedir al teu navegador i entrar en la URL:


http://localhost/my_site_name_dir/web

En la configuració de la base de dades has d’entrar les dades de la base que


acabes de crear:

En “configuració del lloc” (més endavant en el procés) posa un nom al lloc web,
un nom d’usuari administrador, una adreça de correu electrònic, país, zona
horària, i configura que si es comproven actualitzacions però no se t’envien
correus electrònics.

Ara podràs accedir al lloc web Drupal des de dins de la màquina virtual amb la
URL

!9
http://localhost/my_site_name_dir/web

Però també pots accedir des de fora, per exemple des de la màquina local del
laboratori, o des del teu ordinador de casa (si has fet la connexió VPN a la xarxa
del DSIC). Si la teua màquina virtual és, per exemple, la DSW-001-CentOS-
Drupal8.dsic.cloud, pots accedir a la teua web en la URL:

http://DSW-001-CentOS-Drupal8.dsic.cloud/my_site_name_dir/web

!10
Com fer còpies de seguretat i clons d’un lloc web Drupal

Per a fer una còpia d’un lloc web Drupal cal fer una còpia de la base de dades i
una còpia de la carpeta on està la web. La còpia de la base de dades es fa així:

# mkdir ~/backups
# mysqldump -u usuari -p nom_base_dades > ~/backups/nom_base.sql
Enter password: [entra ací la contrasenya de l’usuari de la base de
dades]

Açò crea un fitxer de backup que es pot guardar.

Per fer un backup del directori podem fer:

# cd /var/www/html/
# tar zcvf ~/backups/directori_drupal.tgz directori_web_drupal

Açò crearà un fitxer comprimit en el directori backups del root.

Per fer un clon del lloc web podem aprofitar el backup que acabem de fer. En
primer lloc hem de crear una base de dades nova per a la nova web. Seguiu les
instruccions de la pàgina 7 i creeu una base de dades amb un nou nom, usuari i
contrasenya. A continuació podeu volcar els continguts del backup en la nova
base de dades:

# mysql -u nou_usuari -p nova_base < ~/backsups/nombase.sql


Enter password: [nova_contrasenya]

Ara heu de crear una nova carpeta en /var/www/html/ amb una còpia dels
fitxers que voleu clonar. Podeu descomprimir el fitxer tar o també podeu fer una
còpia directa:

# cd /var/www/html
# cp -r directori_original directori_clonat

Ara heu d’editar la part final del fitxer de configuració

!11
/var/www/html/directori_clonat/web/sites/default/settings.php

I posar les dades de la base de dades clonada:

$databases['default']['default'] = array (
'database' => ‘nova_base’,
'username' => ‘nou_usuari',
'password' => ‘nova_contrasenya',
'prefix' => '',
'host' => 'localhost',
'port' => '3306',
'namespace' => 'Drupal\\Core\\Database\\Driver\\mysql',
'driver' => 'mysql',
);

Un darrer pas necessari serà esborrar les caches de la pàgina clonada, que
corresponen a l’anterior. Podeu fer això executant el següent comandament des
del directori de la instal·lació del clon de Drupal, en el nostre exemple, /var/www/
html/directori_clonat/

# vendor/bin/drush cache-rebuild
[success] Cache rebuild complete.

Amb açò ja podreu accedir a la nova web:

http://localhost/directori_clonat/web

!12

You might also like