Vytvorte okamžitý webový server cez príkazový riadok terminálu a Python

Obsah:

Anonim

Chcete rýchlo zdieľať súbor, otestovať nejaký kód alebo niečo vysielať? Okamžite môžete vytvoriť webový server z aktuálneho adresára pomocou ničoho iného ako python, yup, žiadny apache, žiadny nginx, žiadny litespeed, celý python, ktorý sa v súčasnosti dodáva takmer s každou variáciou unixu. Príkaz je pozoruhodne jednoduchý vzhľadom na jeho užitočnosť a vyskúšajte ho sami, otvorte okno terminálu a ľubovoľný webový prehliadač.

Tento trik okamžite spustí jednoduchý webový server s ničím iným ako s pythonom, funguje v Mac OS X, Linuxe, FreeBSD a iných iná unixová platforma, ktorá má python.

Ako spustiť okamžitý webový server s Pythonom

Ak chcete vytvoriť okamžitý webový server z príkazového riadka, zadajte do ľubovoľného adresára, ktorý chcete mať prístupný cez prehliadače a HTTP, nasledujúce:

Spustite jednoduchý webový server v Pythone 2

python -m SimpleHTTPServer

Spustite jednoduchý webový server v Pythone 3

python -m http.server

Toto okamžite zverejní aktuálny adresár ako webový server, takže ak máte súbor index.html, ktorý sa okamžite zobrazí, v opačnom prípade len vypíše obsah adresára buď na vašej lokálnej IP adrese alebo „ 0.0,0,0“. Upozorňujeme, že port 8000 je predvolené nastavenie portu pre túto funkciu, čo znamená, že na prístup k webovému serveru z prehliadača by ste mali zadať nasledujúcu adresu: http://0.0.0.0:8000

Pamätajte, že bez súboru index.htm alebo index.html v adresári by sa prehliadaču namiesto toho zobrazil jednoduchý výpis adresára CWD/PWD.

Po spustení sa terminál aktualizuje, keď sa stránky a údaje načítajú z webového servera python, pričom sa zobrazia štandardné http protokolovacie informácie, ako sú požiadavky GET a PUSH, ku ktorým súborom pristupuje a kto, chyby 404, IP adresy, dátumy, časy a všetko, čo by ste očakávali od štandardného protokolu http, ako keby ste sledovali súbor denníka prístupu Apache.

Môžete byť obľúbenejší, ak chcete a špecifikujete port, čím získate určitú úroveň nejasnosti pre webový server, ak dúfate, že niečo vysielate iba konkrétnemu jednotlivcovi, alebo ak to jednoducho nechcete Nechcem, aby sa zobrazoval na štandardnom 8000 portscan.Všetko, čo musíte urobiť, je zadať číslo portu na konci vyššie uvedeného príkazu, napríklad:

python -m SimpleHTTPServer 4104

To by spôsobilo spustenie webového servera v aktuálnom adresári na IP s portom 4104, napríklad predpokladajme IP localhost: http://127.0.0.1:4104 alebo http:// 0.0.0.0:4104 v závislosti od vašich nastavení.

Toto je veľmi užitočný tip, ak robíte rýchly vývoj webu a chcete to okamžite skontrolovať v prehliadači alebo ukázať niekomu inému a nechcete si brať čas sftp alebo ho odovzdať do úložiska. Toto by malo fungovať na akomkoľvek unixovom variante OS, vrátane FreeBSD, Linuxu, Ubuntu, Redhat a samozrejme je zahrnutý aj Mac OS X.

Video nižšie ukazuje spúšťanie python servera v adresári s jednoduchým súborom index.html a tiež ukazuje, ako spustený príkaz python odráža, čo sa deje s http pripojením ako normálny http server log by:

Dajte nám vedieť, ak nájdete nejaké obzvlášť užitočné využitie alebo ďalšie tajomstvá tohto skvelého malého triku.

Vytvorte okamžitý webový server cez príkazový riadok terminálu a Python