Vyhledávání na webu

Jak používat Python 'SimpleHTTPServer' k vytvoření webového serveru nebo okamžitému poskytování souborů


SimpleHTTPServer je modul pythonu, který vám umožní okamžitě vytvořit webový server nebo obsluhovat vaše soubory během okamžiku. Hlavní výhodou SimpleHTTPServeru pythonu je, že nemusíte nic instalovat, protože máte nainstalovaný pythonový interpret. Nemusíte se starat o pythonový interpret, protože téměř všechny distribuce Linuxu jsou python interpreter ve výchozím nastavení užitečné.

SimpleHTTPServer můžete také použít jako metodu sdílení souborů. Musíte pouze povolit modul v umístění, kde se nacházejí vaše sdílené soubory. V tomto článku vám ukážu několik ukázek pomocí různých možností.

Krok 1: Zkontrolujte instalaci Pythonu

1. Zkontrolujte, zda je na vašem serveru nainstalován python nebo ne, zadáním níže uvedeného příkazu.

python –V 

OR

python  --version

Ukáže vám verzi interpretu pythonu, který máte, a pokud není nainstalován, zobrazí vám chybovou zprávu.

2. Máte štěstí, pokud tam byl ve výchozím nastavení. Ve skutečnosti méně práce. Pokud náhodou nebyl nainstalován, nainstalujte jej podle níže uvedených příkazů.

Pokud máte distribuci SUSE, zadejte do terminálu yast –> Přejděte na Správa softwaru –> Zadejte 'python' bez uvozovek –> vyberte python interpreter –> stiskněte mezerník a vyberte jej –> a poté nainstalujte to.

Tak jednoduché. K tomu musíte mít SUSE ISO připojené a nakonfigurované jako repo pomocí YaST nebo můžete jednoduše nainstalovat python z webu.

Pokud používáte různé operační systémy jako RHEL, CentOS, Debian, Ubuntu nebo jiné operační systémy Linux, stačí nainstalovat python pomocí yum nebo apt.

V mém případě používám OS SLES 11 SP3 a python interpret je v něm standardně nainstalován. Ve většině případů se nebudete muset starat o instalaci python interpretu na váš server.

Krok 2: Vytvořte testovací adresář a povolte SimpleHTTPServer

3. Vytvořte si testovací adresář, kde si nebudete zahrávat se systémovými soubory. V mém případě mám oddíl nazvaný /x01 a vytvořil jsem tam adresář s názvem tecmint a také jsem přidal nějaké testovací soubory pro testování.

4. Vaše požadavky jsou nyní připraveny. Jediné, co musíte udělat, je vyzkoušet modul SimpleHTTPServer pythonu zadáním níže uvedeného příkazu ve vašem testovacím adresáři (v mém případě /x01//).

python –m SimpleHTTPServer

5. Po úspěšném povolení SimpleHTTPServer začne server poskytovat soubory přes port číslo 8000. Stačí otevřít webový prohlížeč a zadat ip_address:port_number (v mém případě je to 192.168.5.67:8000).

6. Nyní klikněte na odkaz 'tecmint' pro procházení souborů a adresářů adresáře tecmint, viz níže uvedená obrazovka.

7. SimpleHTTPServer úspěšně obsluhuje vaše soubory. Můžete vidět, co se stalo na terminálu poté, co jste přistoupili k serveru prostřednictvím webového prohlížeče, když se podíváte na místo, kde jste provedli svůj příkaz.

Krok 3: Změna portu SimpleHTTPServer

8. Ve výchozím nastavení SimpleHTTPServer pythonu obsluhuje soubory a adresáře přes port 8000, ale můžete definovat jiné číslo portu (zde používám port 9999 ), jak si přejete pomocí příkazu python, jak je znázorněno níže.

python –m SimpleHTTPServer 9999

Krok 4: Poskytujte soubory z jiného umístění

9. Nyní, když jste si to vyzkoušeli, možná budete chtít poskytovat své soubory v konkrétním umístění, aniž byste ve skutečnosti přešli na cestu.

Například, pokud jste ve svém domovském adresáři a chcete serverovat své soubory v adresáři /x01/tecmint/ bez cd do /x01/tecmint , uvidíme, jak to uděláme.

pushd /x01/tecmint/; python –m SimpleHTTPServer 9999; popd;

Krok 5: Poskytujte soubory HTML

10. Pokud se ve vašem umístění zobrazování nachází soubor index.html, interpret pythonu jej automaticky detekuje a namísto poskytování vašich souborů zobrazí soubor html.

Pojďme se na to podívat. V mém případě vložím jednoduchý html skript do souboru s názvem index.html a najdu ho v /x01/tecmint/.

<html>
<header><title>TECMINT</title></header>
<body text="blue"><H1>
Hi all. SimpleHTTPServer works fine.
</H1>
<p><a href="https://linux-console.net">Visit TECMINT</a></p>
</body>
</html>

Nyní jej uložte a spusťte SimpleHTTPServer na /x01/tecmint a přejděte do umístění z webového prohlížeče.

pushd /x01/tecmint/; python –m SimpleHTTPServer 9999; popd;

Velmi jednoduché a šikovné. Můžete obsluhovat své soubory nebo svůj vlastní html kód v mžiku. Nejlepší na tom je, že se nebudete muset starat o instalaci vůbec nic. Ve scénáři, jako když chcete s někým sdílet soubor, nemusíte soubor kopírovat do sdíleného umístění ani vytvářet sdílené adresáře.

Stačí na něm spustit SimpleHTTPServer a je hotovo. Při používání tohoto modulu pythonu musíte mít na paměti několik věcí. Když obsluhuje soubory, běží na terminálu a vytiskne, co se tam děje. Když k němu přistupujete z prohlížeče nebo z něj stahujete soubor, zobrazuje IP adresu, z níž jste k němu přistupovali, stažený soubor atd. Velmi užitečné, že?

Pokud chcete zastavit poskytování, budete muset zastavit běžící modul stisknutím ctrl+c. Nyní tedy víte, jak používat modul SimpleHTTPServer pythonu jako rychlé řešení pro poskytování vašich souborů. Komentování níže pro návrhy a nová zjištění by bylo velkým přínosem pro vylepšení budoucích článků a učení se novým věcem.

Referenční odkazy

Dokumenty SimpleHTTPServer