Apache sur Orange Pi Zéro
Installation du serveur web Apache 2
Apache2 est l’une des applications de serveur web les plus utilisées au monde, robuste et fiable. Elle tourne parfaitement sur des SBC (Single-Board Computer) comme l’Orange Pi Zéro.
Pour la mise en route d’un Orange Pi comme l’Orange Pi-Zéro, voir l’article suivant: https://f1atb.fr/index.php/fr/2020/03/27/mise-en-route-orange-pi-zero/
Une fois la mise en route faite, assurez vous d’avoir une configuration à jour avec:
apt-get update
apt-get upgrade
Si vous n’êtes pas en « root » rajoutez sudo devant les commandes.
Installez Apache2:
apt install apache2 -y
Testez le fonctionnement d’Apache en ouvrant la page web à l’adresse IP de votre Orange PI
http://<adresse IP>
ex: http://192.168.0.100
Par défaut, le site web se trouve dans le dossier /var/www/html/
dossier et Apache retourne le fichier/var/www/html/index.html
.
Vous pouvez à présent installer les pages de votre site web dans un autre dossier comme par exemple /home/xxxx/Html et configurez le serveur en conséquence dans le fichier de configuration par défaut..
nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/xxxx/Html
ScriptAlias "/cgi-bin/" "/home/xxxx/Html/cgi-bin/"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/xxxx/Html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Require all granted
</Directory>
<Directory "/home/xxxx/Html/cgi-bin/">
AllowOverride None
Options +ExecCGI
AddHandler cgi-script .cgi .pl .py
Require all granted
</Directory>
</VirtualHost>
Dans le dossier Html on a un sous-dossier cgi-bin qui permettra d’exécuter des scripts en python ou perl. Il faut indiquer à Apache où se trouve ce dossier particulier qui peut être ailleurs afin de ne pas renvoyer simplement les fichiers scripts mais de lancer leur exécution en local.
Test du serveur
Dans le dossier Html, mettez une page web simple: index.html.
<!DOCTYPE html>
<html>
<body>
<h1>Test de mon site</h1>
</body>
</html>
Redémarrez le serveur Apache2:
service apache2 restart
Appelez la page depuis un navigateur
http://<adresse IP>
Test DES scripts dynamiques
CGI (Common Gateway Interface) définit une méthode d’interaction entre un serveur web et des programmes générateurs de contenu externes, plus souvent appelés programmes CGI ou scripts CGI. Il s’agit d’une méthode simple pour ajouter du contenu dynamique à votre site web en utilisant votre langage de programmation préféré comme perl ou python. Ici seul dans le dossier cgi-bin les programmes seront exécutables comme défini par la directive ScriptAlias du fichier de configuration d’Apache.
Dans le dossier cgi-bin, mettez un petit fichier ‘test.py’ en python pour tester son exécution. Rendez ce fichier executable.
#!/usr/bin/python3
print("Content-type:text/html\n\n")
print("hello")
Appelez la page depuis un navigateur
http://<adresse IP>/cgi-bin/test.py
Si le programme s’exécute, c’est bon. Si vous avez en retour le listing du code il est possible que le module cgid.load ne soit pas chargé par Apache. Allez voir dans le dossier /etc/apache2/mods-enabled si le fichier cgid.load est présent. Si non, il est disponible dans mods-available. On peut l’activer par la commande:
a2enmod cgid
Si vous avez une erreur serveur, vérifiez que votre page test.py est écrite avec une fin de ligne LF adaptée Unix et non CR+LF de windows.
Commentaires récents