Il suffit d’aller dans le répertoire à partager et d’exécuter :
$ python -m SimpleHTTPServer Serving HTTP on 0.0.0.0 port 8000 ...
Le répertoire sera chrooté et accessible sur http://localhost:8000.
Par défaut, le port 8000 est utilisé, mais on peut le changer :
$ python -m SimpleHTTPServer 1234 Serving HTTP on 0.0.0.0 port 1234 ...
Pour les ports inférieurs à 1024, il faut être root :
$ sudo python -m SimpleHTTPServer 80 Serving HTTP on 0.0.0.0 port 80 ...
Si le port correspondant est ouvert sur le routeur, il sera également accessible de l’extérieur. Pratique pour partager rapidement du contenu…



Impressionnant! Merci pour l’info!
Tout simplement énorme.Vraiment
)
)
Tournant depuis tres longtemps sous gnu/linux ubuntu, pour mes besoins perso ( test de templates html/css), je devais a chaque fois, monter apache2 etc… qui quand on est novice… et plus ou moins long a reussir a mettre en oeuvre.( voir docs diverses
La c’est tout simplement enorme
) une ligne dans le terminal et Hop..c’est fait
)
)
La dessus un petit script qui vas bien pour Nautilus(click droit et c’est le bonheur
Plus serieusement ne connaissant absolument pas Python…
Peut t’il y avoir moyen de le faire tourner avec Php.
Voila
Merci et encore tres Bonne Continuation
Prend soin de toi
bye
Génial
C’est normal que dans la liste des trucs, on:
-ne voit pas tous les fichiers(typiquement je vois pas mes fichiers vidéos(.mov, .avi, .mp4)
-ne voit pas les dossiers?
Super!!!
ca me servira bien pour echanger des fichiers entre deux uc
Merci super infos
Chez moi je vois tous les fichiers et les vidéos…
C’est marrant,j’ai lu un billet évoquant la même astuce dans mon agrégateur RSS (Tiny Tiny Rss) aujourd’hui. Par contre, il n’était pas aussi détaillé que le tien. Non, sérieusement c’est vraiment cool comme truc.
Je fais déjà du Python pour des scripts basiques, là ça me donne vraiment envie de faire du Python mon langage à la place de PHP pour les applications web !
Tu fais du Python ®om ?
C’est vrai que si en plus avec une simple option la commande pouvait faire tourner php (apache avec des options prédéfinies de base) ça serait magnifique.
ca partage ton repertoire courant, choisi ton rep avant et ensuite lance
$ python -m SimpleHTTPServer
Impressionant ! Mais après ? Là t’as juste un partage de fichiers… (si le port est ouvert), ce qui est faisable avec samba encore plus rapidement.
Tu pouvais écrire en titre « sur Gnu/Linux »
Ça fonctionne très bien sous Fedora.
Super cette simple astuce !
Thank’s for sharing
C’est un peu le même principe que Woof et Droopy petit serveur web en python pour partager du contenu, Droopy va meme plus loin il permet d’uploader des fichiers.
J’ai découvert cela sur le blog de Uggy
http://blog.uggy.org/post/2009/10/22/Droopy-Upload-simple-de-fichier-par-HTTP
Pingback: HTTP-Server in weniger als 10 Sekunden anlegen | bejonet
GENIAAAALLLLLLLLL
pour ceux qui ont un doute (je sais pas si c’est utile de le dire ?) :
ça marche aussi sous mac snow leopard (avec le port python de macport)
Normal python roxxx !!!!!!
ca marche en fait pour toutes les versions de python.
c’est une classe de base permettant de rajouter un serveur dans son application.
il y a même une application exemple pour de consulter la doc interne des modules
En trouvant ce petit truc sympa, j’ai cherché un peut plus sur le net…
)
et effectivement, les petits scripts d’Upload et les petits scripts pour visionner le contenu d’un dossier sont bien sympa…
ca serait bien de pouvoir faire un mix des 2 …( Amis Devs…
Plus serieusement…
si je post ici…
c’est pour rajouter une petite commande permettant ainsi d’avoir un rapport de log non plus dans la console mais sur un fichier texte.
nohup python -m SimpleHTTPServer
c’est en fait just un petit nohup a rajouter
voila..a plus et y’a vraiment des trucs a faire avec Python
Bonjour,
J’ai trouvé votre tutoriel, simple et pratique. C’est pour cela que je me suis permis de le traduire dans ma langue maternelle (l’espagnol) et de le publier dans mon blog , en respectant bien entendu votre propriété intelectuelle.
Voici l’adresse :
http://www.gustavopimentel.com.ar/2009/12/crear-un-server-http-en-pythoncreer-un-serveur-http-avec-python/#more-633
Merci,
Gustavo Pimentel
Pingback: Technoaddict » Rendre un répertoire accessible à tout le monde en 5 secondes
Je n’en reviens pas de cette astuce.
C’est l’astuce de l’année pour moi.
Merci beaucoup.
Guillaume
c’est bon le script tout chaud tout beau est arrivé
c’est un script bash qui utilise aussi zenity.
(parfais sous gnome
il est tres interesssant, puisqu’il permet de connaitre son adresse Ip externe + son Ip resau interne.
de plus , dans le systray, une icone apparait quand le serveur tourne.
plus de detail ici..pour questions et autres…
http://forum.ubuntu-fr.org/viewtopic.php?id=364489
ou sinon, le script est a telecharger sur le site de son auteur.
a savoir Sputnick.
http://www.sputnick-area.net/scripts/SimpleHTTPServerGui.bash
@+
Pingback: Les Zeuils de Neuneuil
Pingback: Créer un serveur HTTP instantanément sur Ubuntu grâce à Python | Ubuntu pour tous
Pingback: En vrac » Keldan's Blog
Ou alors « avec python », ça marche partout ou python est installable (BSD, Solaris, MAC OS, Windows…)
C’est étrange, si je lance ce script, en allant sur http://localhost:1234 j’arrive sur mon site hébergé chez x10hosting :-S
Pingback: monter un serveur PHP en une ligne de commande (ou presque) » Le Blog du grand loup Zeur
Pingback: Crear un server HTTP en Python|Créer un serveur HTTP avec Python | Gustavo Pimentel's GNU/Linux Blog
L’astuce fonctionne avec Windows XP.
Pingback: Python, ou un serveur Web en 10 secondes « Aiko's Blog
Pingback: Créer un serveur HTTP instantanément sur Ubuntu grâce à Python | Ubuntu
Pingback: En vrac
Question naïve:
Est-ce possible de lancer un serveur python qui peut-être visible depuis internet en le faisant pointer sur mon adresse IP ?
@jay, il suffit de configurer ton routeur pour rediriger le port écouté vers ton PC où tu as lancé le serveur.
Pingback: Créer un serveur HTTP en 10 secondes sur Ubuntu grâce à Python | Ubuntu express, journal de bord au pays du Libre
Bonjour,
Je cherche a faire, en local, une petite application en Python d’interrogation d’une base SQLITE dont l’interface serait en HTML.
Créer de cette façon simple le serveur m’irait très bien.
En revanche, comment faire exécuter les scripts Python par le code HTML ?
@olivier
tu peux utiliser le module CGIHTTPServer qui hérite de SimpleHTTPServer et qui permet d’exécuter des scripts CGI présents par défaut dans le sous répertoire cgi-bin
Pour plus d’info: http://docs.python.org/library/cgihttpserver.html
Et ça marche pour lancer du php dedans (pour faire du coding web) ?
Marre de relancer apache en root à chaque fois !
@22decembre :
Non, c’est très basique…