Vytvořte okamžitý webový server pomocí příkazového řádku terminálu a Pythonu

Obsah:

Anonim

Chcete rychle sdílet soubor, otestovat nějaký kód nebo něco vysílat? Okamžitě můžete vytvořit webový server z aktuálního adresáře pomocí ničeho jiného než python, yup, žádný apache, žádný nginx, žádný litespeed, celý python, který se v dnešní době dodává téměř se všemi variacemi unixu. Příkaz je pozoruhodně jednoduchý vzhledem k tomu, jak je užitečný, a vyzkoušejte jej sami, otevřete okno terminálu a jakýkoli webový prohlížeč.

Tento trik okamžitě spustí jednoduchý webový server s ničím jiným než s pythonem, funguje v Mac OS X, Linuxu, FreeBSD a dalších jiná unixová platforma, která má python.

Jak spustit okamžitý webový server s Pythonem

Chcete-li vytvořit okamžitý webový server z příkazového řádku, zadejte následující do libovolného adresáře, který chcete mít přístupný přes prohlížeče a HTTP:

Spusťte jednoduchý webový server v Pythonu 2

python -m SimpleHTTPServer

Spuštění jednoduchého webového serveru v Pythonu 3

python -m http.server

Toto okamžitě publikuje aktuální adresář jako webový server, takže pokud máte soubor index.html, který se okamžitě zobrazí, jinak pouze vypíše obsah adresáře na vaší IP localhost nebo „ 0.0,0,0“. Všimněte si, že port 8000 je výchozí nastavení portu pro tuto funkci, což znamená, že pro přístup k webovému serveru z prohlížeče byste zadali následující adresu: http://0.0.0.0:8000

Pamatujte si, že bez souboru index.htm nebo index.html v adresáři by se prohlížeči místo toho zobrazil jednoduchý výpis adresáře CWD/PWD.

Po spuštění se terminál aktualizuje, jak se stránky a data načítají z webového serveru python, zobrazující standardní informace protokolování http, jako jsou požadavky GET a PUSH, které soubory jsou přístupné a kým, chyby 404, IP adresy, data, časy a vše, co byste očekávali od standardního protokolu http, jako byste sledovali soubor protokolu přístupu Apache.

Můžete být chytřejší, pokud chcete a specifikujete port, čímž webový server získá určitou úroveň nejasností, pokud doufáte, že budete něco vysílat pouze konkrétní osobě, nebo pokud prostě nechcete Nechci, aby se zobrazoval na standardním 8000 portscanu.Vše, co musíte udělat, je zadat číslo portu na konci výše uvedeného příkazu, například:

python -m SimpleHTTPServer 4104

To by způsobilo spuštění webového serveru v aktuálním adresáři na IP s portem 4104, například předpokládejme IP localhost: http://127.0.0.1:4104 nebo http:// 0.0.0.0:4104 v závislosti na vašem nastavení.

Toto je velmi užitečný tip, pokud děláte rychlý vývoj webu a chcete to okamžitě zkontrolovat v prohlížeči nebo ukázat někomu jinému a nechcete si na to sftp nebo jej odevzdejte do úložiště. To by mělo fungovat na jakémkoli unixovém operačním systému, včetně FreeBSD, Linuxu, Ubuntu, Redhat a samozřejmě je zahrnut i Mac OS X.

Video níže ukazuje python server spouštěný v adresáři s jednoduchým souborem index.html a také ukazuje, jak spuštěný příkaz python odráží, co se děje s http připojením jako normální http server log by:

Dejte nám vědět, pokud najdete nějaké obzvláště užitečné využití nebo další tajemství tohoto skvělého malého triku.

Vytvořte okamžitý webový server pomocí příkazového řádku terminálu a Pythonu