Com utilitzar Python SimpleHTTPServer per crear un servidor web o servir fitxers a l'instant


SimpleHTTPServer és un mòdul Python que us permet crear instantàniament un servidor web o servir els vostres fitxers en un instant. El principal avantatge del SimpleHTTPServer de Python és que no cal que instal·leu res, ja que teniu instal·lat l'intèrpret Python. No us haureu de preocupar per l'intèrpret Python perquè gairebé totes les distribucions de Linux, l'intèrpret Python són útils per defecte.

També podeu utilitzar SimpleHTTPServer com a mètode per compartir fitxers. Només heu d'habilitar el mòdul a la ubicació dels vostres fitxers compartibles. Us mostraré diverses demostracions en aquest article utilitzant diverses opcions.

Pas 1: comproveu la instal·lació de Python

1. Comproveu si Python està instal·lat al vostre servidor o no, emetent l'ordre següent.

# python –V 

OR

# python  --version

Us mostrarà la versió de l'intèrpret Python que teniu i us donarà un missatge d'error si no està instal·lat.

2. Tens sort si hi era per defecte. De fet, menys feina. Si no s'ha instal·lat per casualitat, instal·leu-lo seguint les ordres següents.

Si teniu una distribució SUSE, escriviu yast al terminal –> Aneu a Gestió de programari –> Escriviu 'python' sense cometes –> seleccioneu l'intèrpret de Python –> premeu la tecla espai i seleccioneu-lo -> i després instal·leu-lo.

Simple com això. Per això, heu de tenir SUSE ISO muntat i configurat com a repo per YaST o podeu instal·lar Python des del web.

Si utilitzeu diferents sistemes operatius com RHEL, CentOS, Debian, Ubuntu o altres sistemes operatius Linux, només podeu instal·lar Python amb yum o apt.

En el meu cas, faig servir el sistema operatiu SLES 11 SP3 i l'intèrpret de Python ve instal·lat per defecte. En la majoria dels casos, no us haureu de preocupar d'instal·lar l'intèrpret Python al vostre servidor.

Pas 2: creeu un directori de prova i activeu SimpleHTTPServer

3. Creeu un directori de prova on no us emboliqueu amb els fitxers del sistema. En el meu cas, tinc una partició anomenada /x01 i hi he creat un directori anomenat tecmint i també he afegit alguns fitxers de prova per provar.

4. Els vostres requisits previs ja estan preparats. Tot el que heu de fer és provar el mòdul SimpleHTTPServer de Python emetent l'ordre següent dins del vostre directori de prova (En el meu cas, /x01//).

# python –m SimpleHTTPServer

5. Després d'habilitar SimpleHTTPServer correctament, començarà a servir fitxers a través del port número 8000. Només heu d'obrir un navegador web i introduir ip_address:port_number (en el meu cas és 192.168.5.67:8000).

6. Ara feu clic a l'enllaç tecmint per navegar per fitxers i directoris del directori tecmint, mireu la pantalla següent per a referència.

7. SimpleHTTPServer serveix els vostres fitxers amb èxit. Podeu veure què ha passat al terminal, després d'accedir al vostre servidor mitjançant el navegador web, fent una ullada a on heu executat la vostra ordre.

Pas 3: Canvi del port SimpleHTTPServer

8. De manera predeterminada, el SimpleHTTPServer de Python serveix fitxers i directoris a través del port 8000, però podeu definir un número de port diferent (aquí estic fent servir el port 9999) com vulgueu amb l'ordre de Python tal com es mostra a continuació.

# python –m SimpleHTTPServer 9999

Pas 4: Doneu fitxers des d'una ubicació diferent

9. Ara que ho heu provat, potser us agradaria publicar els vostres fitxers en una ubicació específica sense anar al camí.

Per exemple, si esteu al vostre directori d'inici i voleu servidorar els vostres fitxers al directori /x01/tecmint/ sense cd a /x01/tecmint, a veure com ho farem.

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

Pas 5: publiqueu fitxers HTML

10. Si hi ha un fitxer index.html a la vostra ubicació de publicació, l'intèrpret de Python el detectarà automàticament i publicarà el fitxer html en lloc de publicar els vostres fitxers.

Fem-hi una ullada. En el meu cas, incloc un senzill script html al fitxer anomenat index.html i el localitzo a /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>

Ara deseu-lo i executeu SimpleHTTPServer a /x01/tecmint i aneu a la ubicació des d'un navegador web.

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

Molt senzill i pràctic. Podeu publicar els vostres fitxers o el vostre propi codi html en un instant. El millor és que no us haureu de preocupar d'instal·lar res. En un escenari com si voleu compartir un fitxer amb algú, no heu de copiar el fitxer a una ubicació compartida ni fer que els vostres directoris es puguin compartir.

Només heu d'executar-hi SimpleHTTPServer i ja està. Hi ha algunes coses que heu de tenir en compte quan feu servir aquest mòdul de Python. Quan serveix fitxers, s'executa al terminal i imprimeix el que hi passa. Quan hi accediu des del navegador o en descarregueu un fitxer, mostra l'adreça IP que hi heu accedit i el fitxer descarregat, etc. Molt pràctic, no?

Si voleu deixar de publicar, haureu d'aturar el mòdul en execució prement ctrl+c. Ara ja sabeu com utilitzar el mòdul SimpleHTTPServer de Python com a solució ràpida per servir els vostres fitxers. Comentar a continuació els suggeriments i les noves troballes seria un gran favor per millorar els futurs articles i aprendre coses noves.

Enllaços de referència

Documents de SimpleHTTPServer