Les cartes Raspberry PI peuvent très bien fonctionner pour fournir des fonctions de serveur Web complètes avec de très petits budgets. Ils ont également une très faible consommation d’énergie, de sorte que beaucoup de gens peuvent démarrer une page Web à des coûts abordables.
LAMP sont des serveurs composés d’éléments suivants (chacun composant l’acronyme de LAMP):
- Linux – Système d’exploitation – pour gérer l’intégration matérielle et les opérations logicielles générales
- Apache – Application serveur Web – pour exposer des pages html
- MySQL – Base de données – pour stocker des enregistrements et des données qui doivent être gérés avec des structures apposées
- Php – Script côté serveur – pour créer des pages dynamiques
En plus d’installer LAMP server pour publier un site Web, vous devez également définir certaines configurations réseau.
La première chose à configurer est de s’assurer que votre Raspberry PI acquiert toujours la même adresse IP à chaque démarrage. Cela peut être réalisé en définissant une adresse IP statique sur Raspberry PI et en configurant votre routeur pour laisser la même adresse IP associée à l’adresse Mac RPI (cette partie dépend du modèle de votre routeur).
Si vous souhaitez publier votre page Web sur Internet, vous devez également configurer la redirection de port de votre routeur. Vous devez transférer les ports externes 80 (pour http) et/ou 443 (pour https) vers Raspberry PI. Vous devez également utiliser un domaine, en pouvant également commencer avec un domaine sans IP gratuit (veuillez vous référer au guide de configuration du DUC sans IP pour la dernière partie).
Dans ce tutoriel, je vais vous montrer comment installer un serveur LAMP dans votre Raspberry PI. Je vais utiliser un Raspberry PI Zero W bon marché, mais ce guide s’appliquera à toutes les cartes Raspberry PI.
Ce dont Nous avons besoin
Comme d’habitude, je suggère d’ajouter à partir de maintenant à votre graphique d’achats en ligne préféré tout le matériel nécessaire, afin qu’à la fin, vous puissiez évaluer les coûts globaux et décider de poursuivre le projet ou de les supprimer du graphique d’achat. Ainsi, le matériel ne sera que:
- Raspberry PI Zero W (y compris une alimentation correcte ou en utilisant un chargeur micro usb pour smartphone avec au moins 3A) ou une carte Raspberry PI plus récente
- carte micro SD haute vitesse (au moins 16 Go, au moins classe 10)
Vérifiez les prix du matériel avec les liens suivants:
Step-by-Step Procedure
Install Operating System – Linux
Nous utiliserons un système d’exploitation léger sans environnement de bureau (sans tête), afin d’avoir plus de puissance pour les services au lieu de gaspiller le processeur et la RAM sur l’interface graphique de bureau non nécessaire. Pour cette partie de préparation, veuillez vous référer à installer Raspberry PI OS Lite. Si vous souhaitez qu’un environnement de bureau utilise votre RPI comme ordinateur personnel avec des services de serveur Web, vous pouvez installer Raspberry PI OS Desktop, en procédant aux prochaines étapes à partir du terminal interne.
Mettez votre système d’exploitation à jour:
sudo apt update -y && sudo apt upgrade -y
Installer le serveur Web – Apache
Apache est un serveur HTTP rapide fournissant des fonctionnalités avancées pour exposer des pages Web. C’est le logiciel le plus répandu utilisé sur le Web pour publier des pages. Il est disponible à partir de tous les dépôts de paquets, ce qui simplifie son installation. Depuis le terminal, émettez la commande suivante :
sudo apt install apache2 -y
Une fois l’installation terminée, vous pouvez vérifier qu’Apache fonctionne en utilisant votre navigateur web avec une URL égale à « http:// » suivie de l’adresse IP de votre Raspberry PI. L’image suivante montre le résultat attendu (192.168.1.77 est mon adresse IP RPI):
Installer PhP
Php est également tellement répandu qu’il est disponible à partir de tous les dépôts de paquets. Pour procéder à son installation, utilisez following from terminal:
sudo apt install php -y
Pour vérifier si l’installation s’est correctement terminée, vous pouvez émettre la commande suivante depuis le terminal (avec résultat):
pi@raspberrypi:~ $ php -vPHP 7.3.19-1~deb10u1 (cli) (built: Jul 5 2020 06:46:45) ( NTS )Copyright (c) 1997-2018 The PHP GroupZend Engine v3.3.19, Copyright (c) 1998-2018 Zend Technologieswith Zend OPcache v7.3.19-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies
Vous pouvez également tester php et obtenir des informations système en créant une simple page php sur votre serveur web. À partir du terminal, créez un test.php dans le dossier /var/www/html/ avec la commande suivante:
sudo nano /var/www/html/test.php
Ajoutez la ligne suivante:
<?php phpinfo(); ?>
Enregistrez et quittez. Revenez à votre navigateur, ajoutez « /test.php « à l’adresse IP du Raspberry PI, obtenant le résultat suivant:
Installez Database–MariaDB au lieu de MySQL
Du côté de la base de données, je suggère d’utiliser MariaDB au lieu de MySQL. MariaDB est un fork de MySQL, ce qui donne un logiciel plus léger (qui s’adapte mieux aux ressources du Raspberry PI) et qui conserve les mêmes commandes MySQL valides. Nous allons installer avec le connecteur php, de sorte que MariaDB et Php seront déjà en mesure de communiquer. Depuis le terminal :
sudo apt install mariadb-server php-mysql -y
Une fois terminé, une bonne pratique courante pour les bases de données est de le sécuriser. MariaDB vous donne une procédure pour définir les configurations principales. Depuis le terminal:
sudo mysql_secure_installation
Les questions suivantes seront posées (suivies de mes réponses suggérées):
- Entrez le mot de passe actuel pour root (entrez pour aucun):
- le mot de passe root dans une nouvelle installation est vide, appuyez simplement sur la touche ENTRÉE ou utilisez votre mot de passe root
- Définir le mot de passe root?
- Je suggère de répondre Y (oui)
- Nouveau mot de passe:
- tapez votre nouveau mot de passe root
- Entrez à nouveau le nouveau mot de passe:
- tapez à nouveau votre nouveau mot de passe root
- Supprimez les utilisateurs anonymes?
- Je suggère de répondre Y (oui)
- Interdire la connexion root à distance?
- Je suggère de répondre Y (oui)
- Supprimer la base de données de test et y accéder?
- Je suggère de répondre à Y (oui)
- Recharger les tables de privilèges maintenant?
- Répondez oui pour rendre vos réponses efficaces
Votre serveur LAMP est maintenant prêt !
Simplifier la gestion de la base de données – Phpmyadmin
Un outil utile pour gérer la base de données dans le serveur LAMP est phpMyAdmin. Il peut être installé avec la commande de terminal suivante:
sudo apt install phpmyadmin -y
Dans les écrans de configuration de phpmyadmin, je suggère ce qui suit:
- sélectionnez apache (obligatoire) avec l’espace et appuyez sur Ok
- sélectionnez Oui pour configurer la base de données pour phpmyadmin avec dbconfig-common
- insérez votre mot de passe phpmyadmin préféré et appuyez sur Ok
- insérez à nouveau votre mot de passe phpmyadmin pour confirmer et appuyez sur Ok
Accordez les privilèges de base de données utilisateur phpmyadmin pour gérer les bases de données :
Nous nous connecterons à MariaDB avec root utilisateur (le mot de passe defult est un avant défini) pour accorder des autorisations (n’oubliez pas d’utiliser des points-virgules à la fin de chaque ligne de commande comme indiqué ci-dessous):
sudo mysql -uroot -pgrant all privileges on *.* to 'phpmyadmin'@'localhost';flush privileges;quit
Publicités
À partir de là, utilisez votre navigateur Web pour accéder à la page de connexion de phpMyAdmin en utilisant l’adresse IP de Raspberry PI suivie de « /phpmyadmin/ »: