Opprett en Instant Web Server via Terminal Command Line og Python
Innholdsfortegnelse:
Vil du raskt dele en fil, teste kode eller kringkaste noe? Du kan umiddelbart lage en webserver ut av den gjeldende katalogen ved å bruke noe annet enn python, yup, ingen apache, ingen nginx, ingen litespeed, alle python, som leveres med stort sett alle unix-varianter i disse dager. Kommandoen er bemerkelsesverdig enkel med tanke på hvor nyttig den er, og test den ut selv, åpne et terminalvindu og en hvilken som helst nettleser.
Dette trikset starter en enkel webserver umiddelbart uten annet enn python, det fungerer i Mac OS X, Linux, FreeBSD og alle annen unix-plattform som har python.
Hvordan starte en Instant Web Server med Python
For å opprette den umiddelbare webserveren fra kommandolinjen, skriv inn følgende i hvilken katalog du ønsker å ha tilgjengelig via nettlesere og HTTP:
Start en enkel webserver i Python 2
python -m SimpleHTTPServer
Start Simple Web Server i Python 3
python -m http.server
… 0.0.0.0". Merk at port 8000 er standard portinnstilling for denne funksjonen, noe som betyr at for å få tilgang til nettserveren fra en nettleser må du skrive inn følgende adresse: http://0.0.0.0:8000
Husk, uten en index.htm- eller index.html-fil i katalogen, vil en enkel katalogoppføring av CWD/PWD vises til nettleseren i stedet.
Når den er kjørt, vil terminalen oppdateres ettersom sider og data lastes inn fra python-nettserveren, og viser standard http-loggingsinformasjon som GET- og PUSH-forespørsler, hvilke filer som blir åpnet og av hvem, 404-feil, IP-adresser, datoer, klokkeslett og alt du forventer av en standard http-logg, som om du hadde en apache-tilgangsloggfil.
Du kan bli mer avansert hvis du vil og spesifisere en port, noe som gir en viss grad av uklarhet til webserveren hvis du håper å bare kringkaste noe til en bestemt person, eller hvis du bare ikke Jeg vil ikke at den skal vises på en standard 8000 portscan.Alt du trenger å gjøre er å spesifisere et portnummer på slutten av den nevnte kommandoen, slik:
python -m SimpleHTTPServer 4104
Dette vil få webserveren til å starte i gjeldende katalog på IP med port 4104, for et eksempel, la oss anta localhost IP: http://127.0.0.1:4104, eller http:// 0.0.0.0:4104 avhengig av innstillingene dine.
Dette er et veldig nyttig tips hvis du driver med en rask nettutvikling og vil umiddelbart sjekke det i en nettleser eller vise det til noen andre, og du ikke vil ta deg tid til å sftp eller commit det til et depot. Dette skal fungere på alle unix-varianter OS, inkludert FreeBSD, Linux, Ubuntu, Redhat, og selvfølgelig er Mac OS X inkludert også.
Videoen nedenfor viser en python-server som startes i en katalog med en enkel index.html-fil, den viser også hvordan den kjørende python-kommandoen reflekterer hva som skjer med http-tilkoblingen som en vanlig http-server log ville:
Gi beskjed hvis du finner noen spesielt verdifulle bruksområder eller flere hemmeligheter for dette flotte lille trikset.