Búsqueda de sitios web

Cómo utilizar Python 'SimpleHTTPServer' para crear un servidor web o servir archivos al instante


SimpleHTTPServer es un módulo de Python que le permite crear instantáneamente un servidor web o servir sus archivos en un instante. La principal ventaja de SimpleHTTPServer de Python es que no necesita instalar nada ya que tiene instalado el intérprete de Python. No tiene que preocuparse por el intérprete de Python porque en casi todas las distribuciones de Linux el intérprete de Python es útil de forma predeterminada.

También puede utilizar SimpleHTTPServer como método para compartir archivos. Solo tiene que habilitar el módulo dentro de la ubicación donde se encuentran sus archivos para compartir. Le mostraré varias demostraciones en este artículo utilizando varias opciones.

Paso 1: Verifique la instalación de Python

1. Compruebe si Python está instalado en su servidor o no, emitiendo el siguiente comando.

python –V 

OR

python  --version

Le mostrará la versión del intérprete de Python que tiene y le dará un mensaje de error si no está instalado.

2. Tienes suerte si estaba ahí de forma predeterminada. En realidad, menos trabajo. Si por casualidad no se instaló, instálelo siguiendo los siguientes comandos.

Si tienes una distribución SUSE, escribe yast en la terminal –> Ve a Gestión de software –> Escribe < código>'python' sin comillas –> seleccione el intérprete de Python –> presione la tecla espacio y selecciónelo –> y luego instale él.

Simple como eso. Para eso, necesita tener SUSE ISO montado y configurado como repositorio por parte de YaST o puede simplemente instalar Python desde la web.

Si está utilizando diferentes sistemas operativos como RHEL, CentOS, Debian, Ubuntu u otros sistemas operativos Linux, puede instalar Python usando yum o apt.

En mi caso uso SLES 11 SP3 OS y el intérprete de Python viene instalado de forma predeterminada. En la mayoría de los casos, no tendrá que preocuparse por instalar el intérprete de Python en su servidor.

Paso 2: cree un directorio de prueba y habilite SimpleHTTPServer

3. Crea un directorio de prueba donde no te metas con los archivos del sistema. En mi caso, tengo una partición llamada /x01 y he creado un directorio llamado tecmint allí y también agregué algunos archivos de prueba para realizar pruebas.

4. Sus requisitos previos ya están listos. Todo lo que tienes que hacer es probar el módulo SimpleHTTPServer de Python emitiendo el siguiente comando dentro de tu directorio de prueba (en mi caso, /x01//).

python –m SimpleHTTPServer

5. Después de habilitar SimpleHTTPServer con éxito, comenzará a servir archivos a través del puerto número 8000. Sólo tienes que abrir un navegador web e ingresar ip_address:port_number (en mi caso es 192.168.5.67:8000).

6. Ahora haga clic en el enlace 'tecmint' para explorar archivos y directorios del directorio tecmint; consulte la siguiente pantalla como referencia.

7. SimpleHTTPServer sirve sus archivos correctamente. Puede ver lo que sucedió en la terminal, después de acceder a su servidor a través del navegador web, observando dónde ejecutó su comando.

Paso 3: cambiar el puerto de SimpleHTTPServer

8. De forma predeterminada, SimpleHTTPServer de Python sirve archivos y directorios a través del puerto 8000, pero puedes definir un número de puerto diferente (aquí estoy usando el puerto 9999). ) como desee con el comando Python como se muestra a continuación.

python –m SimpleHTTPServer 9999

Paso 4: servir archivos desde una ubicación diferente

9. Ahora que lo has probado, es posible que desees publicar tus archivos en una ubicación específica sin tener que ir a la ruta.

Por ejemplo, si está en su directorio de inicio y desea guardar sus archivos en el directorio /x01/tecmint/ sin cd en /x01/tecmint , veamos cómo haremos esto.

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

Paso 5: entregue archivos HTML

10. Si hay un archivo index.html ubicado en su ubicación de servicio, el intérprete de Python lo detectará automáticamente y entregará el archivo html en lugar de entregar sus archivos.

Echemos un vistazo. En mi caso incluyo un script html simple en el archivo llamado index.html y lo ubico en /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>

Ahora guárdelo y ejecute SimpleHTTPServer en /x01/tecmint y vaya a la ubicación desde un navegador web.

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

Muy sencillo y práctico. Puede entregar sus archivos o su propio código html en un instante. Lo mejor es que no tendrás que preocuparte por instalar nada de nada. En un escenario en el que desea compartir un archivo con alguien, no es necesario copiar el archivo a una ubicación compartida ni hacer que sus directorios se puedan compartir.

Simplemente ejecute SimpleHTTPServer en él y listo. Hay algunas cosas que debes tener en cuenta al utilizar este módulo de Python. Cuando entrega archivos, se ejecuta en la terminal e imprime lo que sucede allí. Cuando accede a él desde el navegador o descarga un archivo, muestra la dirección IP a la que accedió y el archivo descargado, etc. Muy útil, ¿no?

Si desea dejar de publicar, deberá detener el módulo en ejecución presionando ctrl+c. Ahora ya sabe cómo utilizar el módulo SimpleHTTPServer de Python como una solución rápida para entregar sus archivos. Comentar a continuación las sugerencias y los nuevos hallazgos sería un gran favor para mejorar artículos futuros y aprender cosas nuevas.

Enlaces de referencia

Documentos de SimpleHTTPServer