Come installare Apache, PHP 7 e MariaDB 10, in una distribuzione CentOS
In questo articolo di occupiamo della procedura di installazione di PHP in versione 7.x e del database MariaDB nella versione 10.x.
La distribuzione che utilizziamo è la CentOS 7.
Prima di queste installazioni, vediamo anche rapidamente come installare il server web Apache. Procediamo step by step
Installazione di Apache
L'installazione è molto semplice
yum install httpd
Al termine dell'installazione avviamo Apache
systemctl httpd start
Rendiamo permanente l'avvio di Apache ad ogni riavvio del server
systemctl enable httpd
Verifichiamo la versione di Apache installata:
httpd -v
E' la versione 2.4.6
Server version: Apache/2.4.6 (CentOS)
Server built: Aug 8 2019 11:41:18
Installato Apache, possiamo finalmente concentrarci su PHP e MariaDB.
Installazione delle yum-utils
Procediamo con l'installazione delle yum-utils
yum install yum-utils
Abilitiamo il repository EPEL
Per abilitare il il repository EPEL utilizziamo il seguente comando
yum install epel-release
Abilitiamo il repository REMI
Per installare PHP nella versione 7 dobbiamo abilitare il repository REMI.
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Installazione di PHP 7.x
In base alla versione di PHP 7.x che vogliamo installare utilizziamo i seguenti comandi
// per installare php 7.0
yum-config-manager --enable remi-php70 && yum install php
// per installare php 7.1
yum-config-manager --enable remi-php71 && yum install php
// per installare php 7.2
yum-config-manager --enable remi-php72 && yum install php
// per installare php 7.3
yum-config-manager --enable remi-php73 && yum install php
Installazione pacchetti php aggiuntivi
Ultimiamo l'installazione, se vogliamo, con alcuni pacchetti PHP aggiuntivi, ad esempio i seguenti (voi installate i pacchetti che ritenete necessari alle vostre esigenze)
yum --enablerepo=remi install php-mcrypt php-mbstring php-cli php-soap php-gd php-curl php-pear php-xml php-pecl-geoip php-pear php-ldap php-zip php-fileinfo php-pdo
Verifica installlazione
Verifichamo adesso la versione php installata
php -v
Noi abbiamo installato la versione 7.3. Il risultato sarà
PHP 7.3.15 (cli) (built: Feb 18 2020 09:25:23) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.15, Copyright (c) 1998-2018 Zend Technologies
Bene, tutto è andato a buon fine.
Lascio a voi la configurazione del file "/ect/php.ini"
Riavviamo il server web Apache per rendere operativa l'installazione di PHP
systemctl httpd restart
Adesso occupiamoci dell'installazione di MariaDB 10
Abilitiamo il repository MariaDB 10.1
Innanzitutto occorre aggiungere, al file dei repository di YUM, MariaDB. Utilizziamo l'editor "vi":
vi /etc/yum.repos.d/MariaDB.repo
Aperto il file, digitiamo "i" per poter modificare il file, ed inseriamo al suo interno queste righe
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Salviamo il file, digitando il tasto "Esc" e poi ":wq"
Installazione di MariaDB
Una volta aggiunto il repository MariaDB, è possibile procedere con la sua installazione
yum --enablerepo=remi install httpd MariaDB-client MariaDB-server
Il pacchetto verrà installato con le sue dipendenze.
Avvio di MariaDB
Adesso possiamo procedere all'avvio di MariaDB
systemctl start mariadb
Inoltre, per rendere l'avvio di MariaDB automatico in caso di riavvio del server:
systemctl enable mariadb
Infine, verifichiamo che MariaDB sia effettivamente in esecuzione
systemctl status mariadb
L'indicazione di "active (running)" indica che tutto procede come deve
mariadb.service - MariaDB 10.1.44 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
migrated-from-my.cnf-settings.conf
Active: active (running) since sab 2020-03-07 13:05:57 CET; 1min 18s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 31420 (mysqld)
Status: "Taking your SQL requests now..."
CGroup: /system.slice/mariadb.service
31420 /usr/sbin/mysqld
..................................
Non è ancora finita. Dobbiamo ultimare l'installazione di MariaDB lanciando la "secure installation"
mysql_secure_installation
Apparirà la seguente schermata
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):
Non inserite la password, cliccate sul tasto "Invio" della tastiera e proseguite
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]
Qui indicate "Y" e inserite una password a vostra scelta per l'utente root
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
Adesso ci viene chiesto se rimuovere gli utenti anonimi di MariaDB: decidiamo di rimuoverli
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!
Disabilitiamo anche, per sicurezza, il login remoto dell'utente root
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!
Rimuoviamo il database di test che MariaDB crea di default
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...
... Success!
- Removing privileges on test database...
... Success!
Infine ci viene chiesto di ricaricare i privilegi
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
L'installazione è ultimata!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Verifichiamo la versione di MariaDB installata
mysql -V
Ecco la nostra versione 10.1
mysql Ver 15.1 Distrib 10.1.44-MariaDB, for Linux (x86_64) using readline 5.1
Bene, per concludere potremmo decidere di installare anche phpMyAdmin
yum install phpMyAdmin
Lascio a voi la configurazione del file "/etc/my.cnf"
Abbiamo finito, spero di esservi stato utile.