Installation LAMP stack



Vous trouverez ci bas la procedure standard pour installer les items 

1.  Software Packages

sudo apt update && sudo apt upgrade

2.  Installation de Apache Web Server

Executer les commandes ci dessous pour installer le Apache Web server. Le apache2-utils package s'installera avec certains items comme le Apache HTTP server benchmarking tool (ab).

sudo apt install -y apache2 apache2-utils

Verifier le status avec le systemctl.  systemctl status apache2

 apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; 
vendor preset: enabled) Active: active (running) since Sat 2020-04-11 11:31:31 CST; 2s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 53003 ExecStart=/usr/sbin/apachectl start (code=exited,
status=0/SUCCESS) Main PID: 53011 (apache2) Tasks: 55 (limit: 19072) Memory: 6.4M CGroup: /system.slice/apache2.service ├─53011 /usr/sbin/apache2 -k start ├─53012 /usr/sbin/apache2 -k start └─53013 /usr/sbin/apache2 -k start

Si ce n'est pas le cas, utiliser le systemctl pour le demarrer.

sudo systemctl start apache2

C'est toujours desirable de faire demarrer Apache automatiquement au system boot time.

sudo systemctl enable apache2

Verifier la version de Apache:

apache2 -v

Output:

Server version: Apache/2.4.41 (Ubuntu)
Server built:   2020-03-05T18:51:00

Pour verifier l'installation de apache aller sur le http://localhost ou le 127.0.0.1

Si vous utilisez le UFW firewall, lancez la commande pour ouvrir le TCP port 80.

sudo ufw allow http

Nous devons ensuite rendre le www-data (Apache user) le owner du document root.

sudo chown www-data:www-data /var/www/html/ -R

Par default, Apache utilise le system hostname comme son global ServerName. Si le system hostname ne peut etre resolu avec le DNS, vous aurez probablement une erreur apres execution de la commande  sudo apache2ctl -t command.

AH00558: apache2: Could not reliably determine the server's fully qualified 
domain name, using 127.0.0.1. Set the 'ServerName' directive globally to
suppress this message

Pour regler ca, on peut configurer un global ServerName dans Apache. 

sudo nano /etc/apache2/conf-available/servername.conf

Et d'ajouter cette ligne.

ServerName localhost

Ctrl+O, et Enter pour confirmer. Ctrl+X pour exit.
Et ensuite il faut 'enable' ce fichier config.

sudo a2enconf servername.conf

Reload Apache pour que le changement prenne effet.

sudo systemctl reload apache2

Re-executez sudo apache2ctl -t , vous n'aurez pas le message d'erreur.

3.  Installation du Serveur MariaDB 

Simplement lancez la commande ci dessous sur Ubuntu 20.04.

sudo apt install mariadb-server mariadb-client

Utiliser la commande systemctl pour verifier le status.

systemctl status mariadb

Output:

 mariadb.service - MariaDB 10.3.22 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor 
preset: enabled) Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 9161 (mysqld) Status: "Taking your SQL requests now..." Tasks: 31 (limit: 9451) Memory: 64.7M CGroup: /system.slice/mariadb.service └─9161 /usr/sbin/mysqld

Si ce n'est pas le cas, utiliser le systemctl pour le demarrer.:

sudo systemctl start mariadb

Pour permettre a MariaDB de demarrer automatiquement au boot time, 

sudo systemctl enable mariadb

Lancez le post-installation security script.

sudo mysql_secure_installation

Appuyez sur Entrer quand on vous demande de mettre le MariaDB root password (le root password n'est pas encore configure). Ensuite appuyer sur y  pour configurer le root password du serveur MariaDB.

A partir de la, vous pouvez opter sur Y (yes ou Oui) sur le reste des questions du script.

Par default, le package MariaDb sur Ubuntu utilise le unix_socket pour l'authentification, ce qui veut dire que l'on peut utiliser le username/password du OS pour se loguer sur la console donc 

sudo mariadb -u root

Pour exit, lancez

exit;

Verification de MariaDB server version.

mariadb --version

Output

mariadb  Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

4. Installation du PHP

Lancez la commande pour installer PHP7.4 et d'autres modules
sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline

Et installer nos extensions.

sudo apt install php7.4-mbstring php7.4-xml php7.4-gd php7.4-bcmath php7.4-json php7.4-cli php7.4-curl php7.4-zip

Et de reloader Apache

sudo systemctl reload apache2

Ensuite

sudo a2enmod php7.4

sudo systemctl restart apache2

Verifier PHP version information.

php --version

Output:

PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

Pour bien tester notre installation du PHP sur Apache, nous pouvons creer un fichier info.php dans le repertoire www.

sudo nano /var/www/html/info.php

contenant 

<?php phpinfo(); ?>

Ctrl+O, et Enter pour confirmer et Ctrl+X pour exit. 

Sur 127.0.0.1/info.php or localhost/info.php on devrait avoir le output de phpinfo, ce qui veut dire que les scripts PHP sont executes sans probleme sur Apache.


Avez-vous trouvé cet article utile ?