Serveur Web Debian : Apache PHP7 MariaDB


2 min read
Serveur Web Debian : Apache PHP7 MariaDB

Je vous propose de mettre en place un serveur web Apache avec PHP et  MariaDB. Nous allons effectuer les étapes d'installation et de  configuration pour finir avec un fichier phpinfo.

Mettre à jour le système

apt update
apt upgrade

Installations

apt install apache2

apt install php7.0

apt install mariadb-server

Depuis une récente mise à jour, MariaDB ne demande plus de définir un mot de passe root lors de l'installation. Par défaut il installe la base de données et créer un accès root sans mot de passe.
Même après avoir lancé la commande mysql-secure-installation, rien n'y fait, le mot de passe n'est pas pris en compte.

La raison à cela est que MariaDB utilise le plugin unix_socket pour l'authentification. Pour authentifier l'utilisateur il utilise l'UID du process connecté au socket, donc pour faire simple, le nom de votre utilisateur Unix.
C'est beau, mais moi je souhaite une authentification basique pour mon utilisateur root. Vous avez toujours la possibilité de réactiver ce plugin ensuite.

Désactiver le plugin unix_socket :

sudo mysql -u root

use mysql;
update user set plugin='' where User='root';
flush privileges;
exit

systemctl restart mariadb.service

On peut refaire la procédure normalement :

mysql_secure_installation

Installer php-mysql :

apt install php7.0-mysql

Changer le propriétaire du dossier www

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

Modifier  le php.ini disponible dans /etc/php/7.0/apache2/php.ini. Pour autoriser  l'accès au site modifier la ligne « AllowOverride None » dans la section « <Directory /var/www/> » par

AllowOverride All

Et un rechargement de la conf

systemctl reload apache2

Création du phpinfo

Créer un site de test

cd /var/www
mkdir monsite
cd monsite

nano index.php
<?php phpinfo();

Création du VirtualHost

Ajout de notre VirtualHost

cd /etc/apache2/sites-available
cp 000-default.conf monsite.conf
nano monsite.conf

Contenu du VirtualHost

<VirtualHost *:80>        
    ServerName VOTREIP_OU_DOMAINE        
    DocumentRoot /var/www/monsite        
    ErrorLog ${APACHE_LOG_DIR}/error.log        
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Activer le nouveau site

a2ensite monsite

Redémarrer pour prendre en compte la configuration

systemctl reload apache2

Modules complémentaires (PDO, URL Rewriting)

Activer rewrite pour l'URL rewriting

a2enmod rewrite

Activer PDO

Modifier le php.ini disponible dans /etc/php/7.0/apache2/php.ini

Cherchez

;extension=php_pdo_mysql.dll

Et décommentez

extension=php_pdo_mysql.dll

Redémarrer Apache

systemctl reload apache2

Vérification

Testez votre configuration en accédant à votre site : http://VOTREIP_OU_DOMAINE.
Vous devez retrouver votre extension PDO dans la liste.

Attention  ! Si vous utilisez un nom de domaine, n'oubliez pas de configurer un  champ de type A pointant vers votre IP chez votre registrar.

Vous disposez maintenant d'une installation Apache, PHP et MariaDB prête à l'emploi !

Merci d'avoir suivi cet article jusqu'au bout ! ❤️


Node.JS c'est quoi ?
Previous article

Node.JS c'est quoi ?

Vous connaissez très certainement le JavaScript, ce langage dont on a l'habitude de parler côté client. Et bien le JavaScript peut-être utilisé côté serveur. Je

Créer sa Seedbox avec Plex et Flood
Next article

Créer sa Seedbox avec Plex et Flood

Ce post explique comment créer une seedbox sur un serveur Debian et y accéder (optionnellement) avec un reverse proxy Nginx. Une seedbox est un serveur


GO TOP

🎉 You've successfully subscribed to FrenchCode!
OK