Wyszukiwanie w witrynie

Jak używać Pythona „SimpleHTTPServer” do natychmiastowego tworzenia serwera WWW lub udostępniania plików


SimpleHTTPServer to moduł Pythona, który umożliwia błyskawiczne utworzenie serwera internetowego lub błyskawiczne udostępnianie plików. Główną zaletą SimpleHTTPServer Pythona jest to, że nie musisz niczego instalować, ponieważ masz zainstalowany interpreter Pythona. Nie musisz się martwić o interpreter Pythona, ponieważ prawie wszystkie dystrybucje Linuksa, interpreter Pythona jest domyślnie przydatny.

Możesz także użyć SimpleHTTPServer jako metody udostępniania plików. Wystarczy włączyć moduł w lokalizacji, w której znajdują się pliki, które można udostępniać. W tym artykule pokażę kilka demonstracji przy użyciu różnych opcji.

Krok 1: Sprawdź instalację Pythona

1. Sprawdź, czy na Twoim serwerze jest zainstalowany Python, wydając poniższe polecenie.

python –V 

OR

python  --version

Pokaże Ci wersję posiadanego interpretera Pythona i wyświetli komunikat o błędzie, jeśli nie jest zainstalowany.

2. Masz szczęście, jeśli był tam domyślnie. Właściwie mniej pracy. Jeśli przez przypadek nie został zainstalowany, zainstaluj go, wykonując poniższe polecenia.

Jeśli posiadasz dystrybucję SUSE, wpisz yast w terminalu –> Przejdź do Zarządzanie oprogramowaniem –> Wpisz 'python' bez cudzysłowów –> wybierz interpreter Pythona –> naciśnij klawisz spacji i wybierz go –>, a następnie zainstaluj To.

Proste. W tym celu musisz zamontować SUSE ISO i skonfigurować go jako repozytorium przez YaST lub możesz po prostu zainstalować Pythona z Internetu.

Jeśli używasz różnych systemów operacyjnych, takich jak RHEL, CentOS, Debian, Ubuntu lub innych systemów operacyjnych Linux, możesz po prostu zainstalować Pythona za pomocą yum lub apt.

W moim przypadku używam SLES 11 SP3 OS i domyślnie jest w nim zainstalowany interpreter Pythona. W większości przypadków nie będziesz musiał się martwić instalacją interpretera Pythona na swoim serwerze.

Krok 2: Utwórz katalog testowy i włącz SimpleHTTPServer

3. Utwórz katalog testowy, w którym nie będziesz bawić się plikami systemowymi. W moim przypadku mam partycję o nazwie /x01 i utworzyłem tam katalog o nazwie tecmint, a także dodałem kilka plików testowych do testów.

4. Twoje wymagania wstępne są już gotowe. Wszystko, co musisz zrobić, to wypróbować moduł SimpleHTTPServer Pythona, wydając poniższe polecenie w katalogu testowym (w moim przypadku /x01//).

python –m SimpleHTTPServer

5. Po pomyślnym włączeniu SimpleHTTPServer rozpocznie on udostępnianie plików przez port o numerze 8000. Wystarczy otworzyć przeglądarkę internetową i wpisać adres_ip:numer_portu (w moim przypadku jest to 192.168.5.67:8000).

6. Teraz kliknij link 'tecmint', aby przeglądać pliki i katalogi katalogu tecmint. Zobacz poniższy ekran w celach informacyjnych.

7. SimpleHTTPServer pomyślnie obsługuje Twoje pliki. Możesz zobaczyć, co się stało na terminalu po uzyskaniu dostępu do serwera za pośrednictwem przeglądarki internetowej, sprawdzając, gdzie wykonałeś polecenie.

Krok 3: Zmiana portu serwera SimpleHTTP

8. Domyślnie SimpleHTTPServer Pythona obsługuje pliki i katalogi przez port 8000, ale możesz zdefiniować inny numer portu (tutaj używam portu 9999 ) według własnego uznania za pomocą polecenia Pythona, jak pokazano poniżej.

python –m SimpleHTTPServer 9999

Krok 4: Udostępnij pliki z innej lokalizacji

9. Po wypróbowaniu tej opcji możesz chcieć udostępniać swoje pliki w określonej lokalizacji, bez konieczności wchodzenia na ścieżkę.

Na przykład, jeśli jesteś w swoim katalogu domowym i chcesz serwerować swoje pliki w katalogu /x01/tecmint/ bez cd do /x01/tecmint , Zobaczmy, jak to zrobimy.

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

Krok 5: Udostępnij pliki HTML

10. Jeśli w lokalizacji, w której udostępniasz plik znajduje się plik index.html, interpreter Pythona automatycznie go wykryje i wyświetli plik HTML zamiast udostępniać Twoje pliki.

Rzućmy na to okiem. W moim przypadku dołączam prosty skrypt HTML do pliku o nazwie index.html i lokalizuję go w /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>

Teraz zapisz go i uruchom SimpleHTTPServer na /x01/tecmint i przejdź do lokalizacji z poziomu przeglądarki internetowej.

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

Bardzo proste i poręczne. Możesz błyskawicznie udostępnić swoje pliki lub własny kod HTML. Najlepsze jest to, że nie musisz się w ogóle martwić o instalowanie czegokolwiek. W sytuacji, gdy chcesz udostępnić komuś plik, nie musisz kopiować pliku do udostępnionej lokalizacji ani udostępniać katalogów.

Wystarczy uruchomić na nim SimpleHTTPServer i gotowe. Korzystając z tego modułu Pythona, należy pamiętać o kilku rzeczach. Kiedy udostępnia pliki, działa na terminalu i wypisuje, co się tam dzieje. Kiedy uzyskujesz do niego dostęp z przeglądarki lub pobierasz z niego plik, pokazuje adres IP, z którego uzyskano dostęp, i pobrany plik itp. Bardzo przydatne, prawda?

Jeśli chcesz zatrzymać wyświetlanie, będziesz musiał zatrzymać działający moduł, naciskając ctrl+c. Teraz wiesz, jak używać modułu SimpleHTTPServer Pythona jako szybkiego rozwiązania do obsługi plików. Komentowanie poniżej sugestii i nowych ustaleń byłoby wielką pomocą w ulepszaniu przyszłych artykułów i zdobywaniu nowych informacji.

Linki referencyjne

Dokumentacja SimpleHTTPServer