Crear un servidor web instantáneo a través de la línea de comandos de terminal y Python
Tabla de contenido:
¿Quiere compartir rápidamente un archivo, probar algún código o transmitir algo? Puede crear instantáneamente un servidor web a partir del directorio actual usando nada más que python, sí, sin apache, sin nginx, sin litespeed, todo python, que se envía con casi todas las variaciones de Unix en estos días. El comando es notablemente simple considerando lo útil que es, y pruébelo usted mismo abriendo una ventana de Terminal y cualquier navegador web.
Este truco inicia instantáneamente un servidor web simple con nada más que python, funciona en Mac OS X, Linux, FreeBSD y cualquier otra plataforma unix que tiene python.
Cómo iniciar un servidor web instantáneo con Python
Para crear el servidor web instantáneo desde la línea de comandos, escriba lo siguiente en cualquier directorio al que desee tener acceso a través de navegadores y HTTP:
Inicie un servidor web simple en Python 2
python -m SimpleHTTPServer
Iniciar servidor web simple en Python 3
python -m http.servidor
Esto publicará el directorio actual como un servidor web de inmediato, por lo que si tiene un archivo index.html que se mostrará de inmediato, de lo contrario, solo enumerará el contenido del directorio en su IP localhost o " 0.0.0.0”. Tenga en cuenta que el puerto 8000 es la configuración de puerto predeterminada para esta función, lo que significa que para acceder al servidor web desde un navegador se debe ingresar la siguiente dirección: http://0.0.0.0:8000
Recuerde, sin un archivo index.htm o index.html en el directorio, en su lugar, se mostraría una simple lista de directorios de CWD/PWD en el navegador.
Una vez que se ejecute, el terminal se actualizará a medida que se carguen páginas y datos desde el servidor web de Python, mostrando información de registro HTTP estándar como solicitudes GET y PUSH, a qué archivos se accede y por quién, errores 404, Direcciones IP, fechas, horas y todo lo que esperaría de un registro http estándar como si estuviera siguiendo un archivo de registro de acceso de apache.
Puede volverse más elegante si desea especificar un puerto, dando cierto nivel de oscuridad al servidor web si solo espera transmitir algo a un individuo específico, o si simplemente no No quiero que aparezca en un escaneo de puertos estándar de 8000.Todo lo que necesita hacer es especificar un número de puerto al final del comando mencionado anteriormente, así:
python -m SimpleHTTPServer 4104
Esto haría que el servidor web se inicie en el directorio actual en la IP con el puerto 4104, por ejemplo, supongamos que la IP del host local: http://127.0.0.1:4104, o http:// 0.0.0.0:4104 dependiendo de su configuración.
Este es un consejo muy útil si está realizando un desarrollo web rápido y desea verificarlo de inmediato en un navegador o mostrárselo a otra persona, y no desea tomarse el tiempo para sftp o enviarlo a un repositorio. Esto debería funcionar en cualquier variante del sistema operativo Unix, incluidos FreeBSD, Linux, Ubuntu, Redhat y, por supuesto, también se incluye Mac OS X.
El video a continuación muestra el lanzamiento de un servidor python en un directorio con un archivo index.html simple, también muestra cómo el comando python en ejecución refleja lo que sucede con la conexión http como un servidor http normal registro sería:
Háganos saber si encuentra usos particularmente valiosos o secretos adicionales para este gran pequeño truco.