Installer Apache, MySQL et Phpmyadmin sous ubuntu 16

Installer Apache, MySQL et phpMyAdmin sous ubuntu 16

Dans cet article nous allons aborder l’installation d’un environnement de production Web sur un serveur Linux Ubuntu version 16.

Les commandes abordées dans cet article ont été testées et validées sur la version 64 bits de Ubuntu 16.04.1

Pour connaître sa version de Ubuntu, exécuter cette commande :

lsb_release -a

le résultat est donc :

Distributor ID: Ubuntu
Description: Ubuntu 16.04.1 LTS
Release: 16.04

Création d’un utilisateur avec privilèges ROOT

Pour respecter les bonnes pratiques, nous allons créer un utilisateur qu’on va nommer lu pour effectuer les commandes.

Pour créer l’utilisateur lu

adduser lu

Il vous sera demandé d’entrer un mot de passe qui doit être fort.

Une fois l’utilisateur créé, nous allons lui attribuer les droits root.

Exécutez en tant que root:

gpasswd –a lu sudo

Changez d’utilisateur en exécutant la commande:

Su lu

Installation d’Apache

Apache est disponible dans les référentiels logiciels par défaut d’Ubuntu. Nous allons donc l’installer à l’aide des outils de gestion de paquets classiques.

Nous allons commencer par mettre à jour l’index des paquets sur le serveur:

sudo apt-get update

nous pouvons installer maintenant apache2 :

sudo apt-get install apache2

A la fin de l’installation nous allons vérifier si Apache fonctionne, il suffit alors de voir sur le navigateur le lien http://localhost ou mettre l’adresse ip publique de votre serveur.

Pour trouver votre adresse IP publique, il vous suffit d’exécuter :

hostname -I

Nous allons maintenant apporter quelques modifications pour le bon fonctionnement des sites web qu’on va héberger sur cet apache. Il faudra commencer par activer mod_rewrite.

mod_rewrite est disponible mais n’est pas activé avec une installation propre d’Apache 2. Pour l’activer :

Lire   Améliorer la sécurité d’accès à phpMyAdmin sur un serveur Ubuntu

sudo a2enmod rewrite

Redémarrer Apache : service apache2 restart.

A savoir que par défaut, Apache interdit l’utilisation d’un fichier .htaccess pour appliquer des règles de réécriture.

Il faut donc Ouvrir le fichier de configuration Apache par défaut à l’aide de vi:

sudo vi /etc/apache2/sites-available/000-default.conf

Dans ce fichier, on a un bloc commençant à la première ligne. À l’intérieur de ce bloc, ajoutez le nouveau bloc au-dessous (Assurez-vous que tous les blocs sont correctement mis en retrait ou indenté):



Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted

. . .

Redémarrer Apache : service apache2 restart.

C’est bon, on peut donc utiliser RewriteEngine on dans notre fichier .htaccess

Installation de MySQL

La façon la plus sipmle pour installer MySQL est comme d’habitude mettre à jour l’index des paquets et ensuite installe le paquet mysql-server.


sudo apt-get update
sudo apt-get install mysql-server

Vous serez invité à créer un mot de passe root lors de l’installation. Choisissez-en un sécurisé et assurez-vous de vous en souvenir, car vous en aurez besoin plus tard.

Configuration de la sécurité de MySQL

Pour les nouvelles installations de MySQL, vous devez exécuter le script de sécurité inclus.

Ce script va modifier certaines des options par défaut de MySQL et dont la sécurité laisse désirer.

Pour exécuter le script de sécurité :

mysql_secure_installation

Le script va vous demander le mot de passe root créé auparavant. Répondre par Y pour accepter les valeurs par défaut de toutes les questions posées lors de cette étape, à l’exception de celle qui vous demande si vous souhaitez modifier le mot de passe root.

Lire   23 raisons pour lesquelles Avoir un "site web gratuit" (ou presque) est une mauvaise idée

Nous pouvons maintenant tester notre connexion à MySQL en se connectant à la base “sys” (puisque nous considérons que nous venons d’installer MySQL et qu’on n’a pas de bases sur le serveur):

mysql -p -u root sys

On nous demande alors le mot de passe de MySQL (ce qui est un bon début), une fois le mot de passe mis, on doit avoir le prompt >mysql.

Vérifier la connexion mysql sous ubuntu

Installation de PhpMyadmin

PhpMyAdmin va nous permettre d’accéder à nos bases de données directement depuis un navigateur internet.

Exécutez :

sudo apt-get install phpmyadmin apache2-utils

Il vous sera demandé alors (comme d’habitude) un mot de passe root MySQL qui doit être (comme d’habitude) un mot de passe fort.

Un fois l’installation de phpMyAdmin terminée il faudra modifier le fichier de configuration d’apache2

Il faudra donc modifier le fichier apache2.conf. Exécuter cette commande pour pouvoir éditer le fichier :

sudoedit /etc/apache2/apache2.conf

Ajouter à la fin du fichier (Touche Echap ensuite : ensuite i)

Include /etc/phpmyadmin/apache.conf

Sauvegarder le fichier et quitter (Touche Echap ensuite : ensuite wq).

Redémarrez apache:

sudo service apache2 restart

Vous pouvez maintenant accéder à phpMyAdmin via l’url http://localhost/phpmyadmin (ou en mettant l’ip publique bien sûr)

Rendre index.php prioritaire

Après l’installation d’Apache, par défaut le serveur Apache priorise les fichiers index.html.

Cela veut dire que si nous possédons, dans un même dossier, un fichier index.html et un fichier index.php, notre serveur Web va appeler le fichier index.html.

Ouvrir le fichier de configuration d’Apache :

sudo vi /etc/apache2/mods-enabled/dir.conf

Il se peut qu’on vous demande le mot de passe de l’utilisateur pour plus de sécurité.

Lire   23 raisons pour lesquelles Avoir un "site web gratuit" (ou presque) est une mauvaise idée

On trouve alors la liste des priorités de notre serveur Apache :

Ordre de priorité des fichiers dans Apache

Comprendre que index.html est plus prioritaire que index.cgi qui est encore plus prioritaire que index.pl …

Mettre donc index.php en tête de la liste pour qu’il soit le plus prioritaire.

Installation de fonctionnalités supplémentaires

Des fois nous avons besoin d’installer des fonctionnalités supplémentaires comme les fonctions mathématique (bcdiv).

Pour cela :

sudo apt-get install php-bcmath

Et ensuite relancer Apache : sudo service apache2 restart

Leave a comment

11 + onze =