servidor - ¿Cuál es el equivalente de Python 3 de "python-m SimpleHTTPServer"?
servidor http python 3 (6)
¿Cuál es el equivalente de Python 3 de python -m SimpleHTTPServer
?
Además de la respuesta de Petr, si desea enlazar a una interfaz específica en lugar de a todas las interfaces, puede usar el indicador de vinculación -b / -.
python -m http.server 8000 --bind 127.0.0.1
El fragmento anterior debe hacer el truco. 8000 es el número de puerto. 80 se utiliza como el puerto estándar para las comunicaciones HTTP.
De la documentación :
El módulo
SimpleHTTPServer
se ha fusionado enhttp.server
en Python 3.0. La herramienta 2to3 adaptará automáticamente las importaciones al convertir sus fuentes a 3.0.
Por lo tanto, su comando es python3 -m http.server
.
El comando python -m SimpleHTTPServer
es para Linux. Utilice el comando python -m http.server 7777
para Windows
El equivalente es:
python3 -m http.server
En uno de mis proyectos ejecuto pruebas contra Python 2 y 3. Para eso escribí un pequeño script que inicia un servidor local de forma independiente:
$ python -m $(python -c ''import sys; print("http.server" if sys.version_info[:2] > (2,7) else "SimpleHTTPServer")'')
Serving HTTP on 0.0.0.0 port 8000 ...
Como un alias:
$ alias serve="python -m $(python -c ''import sys; print("http.server" if sys.version_info[:2] > (2,7) else "SimpleHTTPServer")'')"
$ serve
Serving HTTP on 0.0.0.0 port 8000 ...
Tenga en cuenta que controlo mi versión de Python a través de entornos conda , por eso puedo usar python
lugar de python3
para usar Python 3.
Usando la utilidad 2to3.
$ cat try.py
import SimpleHTTPServer
$ 2to3 try.py
RefactoringTool: Skipping implicit fixer: buffer
RefactoringTool: Skipping implicit fixer: idioms
RefactoringTool: Skipping implicit fixer: set_literal
RefactoringTool: Skipping implicit fixer: ws_comma
RefactoringTool: Refactored try.py
--- try.py (original)
+++ try.py (refactored)
@@ -1 +1 @@
-import SimpleHTTPServer
+import http.server
RefactoringTool: Files that need to be modified:
RefactoringTool: try.py