Table des matières
Apache sur RaspBerry Pi : un serveur Web (LAMP)
Pré-requis
-
Raspberry Pi avec sa Carte Micro SD, son Alimentation et son boîtier
-
Cordon Ethernet ou WiFi (dongle pour le Pi2, pas besoin pour les Pi 3 et 4 qui ont le WiFi intégré)
Installation
Nous ferons l'installation via SSH.
Sur PC du réseau, Connectez-vous au RaspBerry via SSH :
...@...:~ $ ssh framboise4 ... pi@framboise4:~ $
-
Définissez l'emplacement de la racine du serveur : Déplacer la racine (répertoire de base) d'un serveur HTTP
-
Installez Apache2 :
pi@framboise4:~ $ sudo apt update pi@framboise4:~ $ sudo apt upgrade pi@framboise4:~ $ sudo apt install apache2
-
Récupérez l'adresse IP du Raspberry :
pi@framboise4:~ $ hostname -I 192.168.0.32 2a02:8440:2141:40c0::3 2a02:8440:2141:40c0:75c2:8f84:982:7a49 2a02:8440:4640:b7e4::1
Ici, 192.168.0.32 en IPv4
-
ajoutez l’utilisateur pi au groupe www-data :
pi@framboise4:~ $ sudo usermod -a -G www-data pi
-
Donnez au groupe www-data la propriété de tous les fichiers et dossiers du répertoire /var/www/html :
pi@framboise4:~ $ sudo chown -Rf www-data:www-data /var/www/html
-
Redémarrez pour activer ces réglages :
pi@framboise4:~ $ sudo reboot
-
et reconnectez-vous :
...@...:~ $ ssh framboise4 ... pi@framboise4:~ $
Configuration
Mise en place d’un hôte virtuel Apache
Les hôtes virtuels permettent à Apache de gérer plusieurs sites web, chaque hôte virtuel permettant de configurer et de paramétrer un domaine particulier.
-
Créez le Virtualhost : Créez avec les droits d'administration le fichier :
- /etc/apache2/sites-available/monsite.tld.conf
<VirtualHost *:80> ServerName monsite.tld ServerAlias www.monsite.tld DocumentRoot /var/www/html/monsite.tld/public_html ErrorLog ${APACHE_LOG_DIR}/monsite.tld_error.log CustomLog ${APACHE_LOG_DIR}/monsite.tld_access.log combined </VirtualHost>
-
ServerName : domaine de base utilisé pour faire correspondre le VirtualHost à un nom de domaine
-
ServerAlias : noms de domaine supplémentaires ; utile pour faire correspondre des noms supplémentaires tels qu’un sous-domaine www
-
DocumentRoot : répertoire à partir duquel tous les fichiers seront servis par Apache
-
ErrorLog : endroits où sont conservés les fichiers journaux
-
CustomLog: endroits où sont conservés les fichiers journaux
Créez un dossier pour votre domaine :pi@framboise4:~ $ sudo mkdir -p /var/www/html/monsite.tld pi@framboise4:~ $ sudo chown -R www-data:www-data /var/www/html/monsite.tld
Activez le Virtual Host :pi@framboise4:~ $ sudo a2ensite monsite.tld.conf
Relancez Apache :pi@framboise4:~ $ sudo systemctl reload apache2