http.server resulta práctico para ver archivos estáticos, probar solicitudes locales y crear prototipos. El comando python -m http.server sirve el directorio actual.

Ejemplo práctico

from http.server import ThreadingHTTPServer, SimpleHTTPRequestHandler

server = ThreadingHTTPServer(("127.0.0.1", 8000), SimpleHTTPRequestHandler)
print("Serving locally at http://127.0.0.1:8000")
try:
    server.serve_forever()
except KeyboardInterrupt:
    server.server_close()

Limita la interfaz de red

Usa --bind 127.0.0.1 para acceso solo local y --directory public para elegir explícitamente el contenido. De lo contrario, podrías exponer a la red archivos del directorio actual.

Mantén pequeña la personalización

SimpleHTTPRequestHandler resuelve archivos e índices. Una subclase puede ajustar cabeceras o logs en una prueba, pero la autenticación y las subidas seguras requieren una solución para producción.

Cierre y automatización

En pruebas, elige un puerto disponible, ejecuta el servidor en un contexto controlado y llama a shutdown() desde otro hilo antes de server_close(). No dejes procesos huérfanos en CI.

Sigue aprendiendo

Refuerza la base con ejecución segura de comandos. A documentación oficial de Python, consultada el 22 de julio de 2026, detalla la API, las limitaciones y las diferencias entre versiones.