Installer un serveur Python3

Installer apache

Apache est un puissant serveur HTTP, populaire et libre de droits.

  • Mettre à jour le gestionnaire de paquets :

  • Installer Apache :


Servir une application Web Python Flask via Apache

Supposons que l’application s’appelle machin.py  et soit placée dans le dossier /home/machin

Voir un exemple élémentaire d'application Python Flask


Installer wsgi

WSGI est une interface entre des serveurs et des applications web pour le langage Python.

Créer un fichier machin.wsgi  dans le dossier /home/machin , et contenant le code suivant :

C’est du python, même si l’extension ne le dit pas.

Configurer apache

Créer un nouveau fichier de configuration apache :

avec le contenu :

Ce fichier renseigne le serveur apache sur :

  • le port du site (ici 80)
  • le chemin du fichier de configuration wsgi (ici /home/machin/machin.wsgi )
  • l’adresse à utiliser pour atteindre le site ( ici /  , ce qui signifie que l’URL sera simplement l’adresse IP du Rasberry)
  • le dossier où se situe le site (ici /home/machin )
  • le chemin du fichier log (ici  /home/machin/logs/error.log )

Ce fichier est très important : il permettra d’enregistrer tous les messages d’erreur et ainsi débugger le programme.

Il faut aussi penser à créer le sous-dossier logs .

Donner les droits à l’utilisateur pi

Activer la configuration wsgi

Désactiver la configuration par défaut

Redémarrer Apache


Faire un reverse proxy

Pour rediriger une URL locale (par exemple un flux vidéo d’URL <adresse IP locale>:8080 ), il faut réaliser un reverse proxy :

Activer les fonctions de proxy

Modifier le fichier de configuration apache

avec le contenu :

Redémarrer Apache

A présent, l’URL pour accéder à <adresse IP locale>:8080 sera /cam .


Réinitialisation complète

En cas de fausse manœuvre, s’il devient nécessaire de recommencer à zéro, voici comment proprement réinstaller apache :

 

source : http://raspbian-france.fr/installer-serveur-web-raspberry/

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

code