Opret en Instant Web Server via Terminal Command Line og Python
Indholdsfortegnelse:
Vil du hurtigt dele en fil, teste noget kode eller udsende noget? Du kan øjeblikkeligt oprette en webserver ud af den aktuelle mappe ved ikke at bruge andet end python, yup, ingen apache, ingen nginx, ingen litespeed, alt python, som leveres med stort set alle unix-variationer i disse dage. Kommandoen er bemærkelsesværdig enkel i betragtning af hvor nyttig den er, og test den selv, åbn et terminalvindue og enhver webbrowser.
Dette trick starter en simpel webserver med det samme uden andet end python, det virker i Mac OS X, Linux, FreeBSD og alle anden unix-platform, der har python.
Sådan starter du en øjeblikkelig webserver med Python
For at oprette den øjeblikkelige webserver fra kommandolinjen skal du skrive følgende i den mappe, du ønsker at have adgang til via browsere og HTTP:
Start en simpel webserver i Python 2
python -m SimpleHTTPServer
Start Simple Web Server i Python 3
python -m http.server
… 0.0.0.0". Bemærk, at port 8000 er standardportindstillingen for denne funktion, hvilket betyder, at for at få adgang til webserveren fra en browser skal man indtaste følgende adresse: http://0.0.0.0:8000
Når den kører, opdateres terminalen, efterhånden som sider og data indlæses fra python-webserveren, og viser standard http-logningsoplysninger som GET- og PUSH-anmodninger, hvilke filer der tilgås og af hvem, 404-fejl, IP-adresser, datoer, klokkeslæt og alt det, du ville forvente af en standard http-log, som om du havde en apache-adgangslogfil.
Du kan blive mere avanceret, hvis du vil, og specificere en port, hvilket giver en vis grad af uklarhed for webserveren, hvis du håber kun at udsende noget til en bestemt person, eller hvis du bare donerer Jeg vil ikke have det vist på en standard 8000 portscan.Alt du skal gøre er at angive et portnummer i slutningen af den førnævnte kommando, som f.eks.:
python -m SimpleHTTPServer 4104
Dette ville få webserveren til at starte i den aktuelle mappe på IP med port 4104, lad os for eksempel antage localhost IP: http://127.0.0.1:4104 eller http:// 0.0.0.0:4104 afhængigt af dine indstillinger.
Dette er et meget praktisk tip, hvis du er i gang med en hurtig webudvikling og straks vil tjekke det i en browser eller vise det til en anden, og du ikke vil tage dig tid til at sftp eller commit det til et lager. Dette burde fungere på alle unix-varianter OS, inklusive FreeBSD, Linux, Ubuntu, Redhat, og selvfølgelig er Mac OS X også inkluderet.
Videoen nedenfor viser en python-server, der startes i en mappe med en simpel index.html-fil, den viser også, hvordan den kørende python-kommando afspejler, hvad der foregår med http-forbindelsen som en normal http-server log ville:
Lad os det vide, hvis du finder nogen særligt værdifulde anvendelser eller yderligere hemmeligheder til dette fantastiske lille trick.