Python pour partager vos répertoires via un serveur web / HTTP

Python pour partager vos répertoires via un serveur web / HTTP

Si vous voulez partager vos dossiers et fichiers via un serveur HTTP et que pour une raison ou pour une autre vous ne voulez pas vous salir les main avec la configuration de apache qui peut s’avérer assez compliquée et peut vous faire perdre pas mal de temps, alors croyez moi c’est Python que vous cherchez, il vient avec un script très simple à utiliser qui vous permettra de transformer n’importe quel répertoire / dossier en serveur web vous permettant ainsi de partager son contenu avec d’autre personnes, ça leur donnera la possibilité de télécharger et d’uploader des fichiers directement depuis / sur ce répertoire.

Le seul et unique logiciel que vous aurez besoin d’installer est Python (qui n’est pas vraiment un logiciel mais un compilateur de scripts codés en Python – le langage de programmation – ).  Python est disponible en deux versions, Python2 et Python3, je vous conseille d’installer les deux côte à côte  afin de pouvoir exécuter tout les scripts sans sans problèmes, peu importe la version de Python qu’ils utilisent… Cliquez ici pour télécharger Python2 et Python3 depuis le site officiel.

L’installation sur Windows est très simple, suivant suivant suivant et HOP vous avez Python installé et fonctionnel, Si vous utilisez Linux ou Mac, il y a de grandes chances que vous ayez déjà Python2 pré-installé, vous pouvez vérifier en exécutant l’une des commandes suivantes dans le terminale :

$ python --version

Ou :

$ python -V

Si vous désirez installer python3 aussi c’est très simple, Je ferais un petit tuto plus tard, en attendant, demandez de l’aide à tonton Google.

Partager un répertoire via un serveur web / HTTP :

Maintenant qu’on a installé Python, il est temps de l’utiliser pour partager un répertoire via un serveur web / http.

Supposons que je veux partager le répertoire « Documents » dont le chemin est « /Adnane/Documents », tout ce que j’ai à faire c’est ouvrir un terminal (ou CMD pour Windows) me placer dans ce répertoire avec la commande :

$ cd /Adnane/Documents

et :

Téléchargement seulement :

Linux et Mac avec python2 :

$ python -m SimpleHTTPServer

Linux et Mac avec python3 :

$ python -m http.server

Windows avec python2 :

"c:\Python27\python.exe" -m SimpleHTTPServer

Windows avec python3 :

"c:\Python34\python.exe" -m http.erver

Notez bien qu’il faut changer le chiffre en rouge avec celui de la version que vous avez installé. Le port utilisé par défaut est 8000, vous pouvez le changer en ajoutant un espace et le port que vous voulez utiliser après la commande. Ex : $ python2 -m SimpleHTTPServer 4444

Téléchargement et Upload :

Pour permettre l’upload en plus du téléchargement via un serveur web, c’est un peu diffèrent mais ça reste très simple. Il suffit de copier le code suivant qui est une version modifiée du module par défaut de SipleHTTPServer que nous avions utilisé si dessus, et le coller dans un fichier et assurez vous bien de lui donnez l’extension .py ! moi je choisis de le nommer « serveurHTTP.py« .

Vous vous êtes déjà placé dans le répertoire que vous voulez partager n’est ce pas ? cool, maintenant exécutez l’une des commande suivantes :

Linux et Mac :

$ python /répertoire_du_script/nom_du_script.py

Windows :

"c:\Python27\python.exe" /répertoire_du_script/nom_du_script.py

Ce script est comme je vous avais dis basé sur le module SipleHTTPServer de python, donc automatiquement lui aussi il utilise 8000 comme port par défaut pour le serveur web, et oui vous l’avez deviné pour ce script aussi on peut indiquer un port différent après la commande.

Accéder au serveur :

Pour accéder au serveur qu’on a lancé il suffit d’utiliser comme url « votre_adresse_ip:Le_port_utilisé« , c’est aussi simple que ça !

Pour récupérer votre adresse IP interne exécutez la commande ipconfig pour Windows ou ifconfig pour Linux et Mac. Quand à votrez adresse IP publique, utilisez un service comme whatismyipaddress.com pour la connaitre.

EXEMPLE : 192.168.1.16:8000

Notez bien que si vous allez partager le serveur avec une personne qui est hors de votre réseau il faudra ouvrir le port que vous allez utiliser dans votre box internet et lui donner votre_ip_publique:le_port !

Je suppose que vous le savez déjà mais je vais vous le dire quand même, si vous avez un fichier index.html dans le répertoire partagé, ce fichier sera exécuté automatiquement par le navigateur, ceci est très utile si vous travaillez sur un site web et que vous voulez montrer votre progrès à vos amis, camarades ou supérieurs.

Ce tutoriel touche à sa fin, j’espère qu’il vous a été utile, si oui n’hésitez pas à le partager avec vos amis, à très bientôt !

Adnane Elbakkali

Adnane Elbakkali, un jeune blogueur Marocain de 20 ans, fan de tout ce qui est hight tech et nouvelles technologies, j'ai commencé à écrire dans des blog depuis 2009, et j'ai décidé de créer celui la vers le début de 2012 afin de pouvoir partager toutes mes connaissances avec notre communauté ici à ParlonsGeek.

Des articles qui pourraient vous intéresser
  • devupfull

    c’est facile d’apprendre a programmer en python ?

    • C’est le meilleur pour débuter. et même pour les pro !

  • Five

    je suis d’accord ! je l’ai appirs en moins d’un mois avec pas mal de fonctions réseaux utiles