Pertanyaan Apa itu Python 3 yang setara dengan “python -m SimpleHTTPServer”


Apa yang dimaksud dengan Python 3 setara python -m SimpleHTTPServer?


763
2017-10-30 07:22


asal


Jawaban:


Dari dokumen:

Itu SimpleHTTPServer modul telah digabungkan http.server dengan Python 3.0. Alat 2to3 akan secara otomatis menyesuaikan impor ketika mengkonversi sumber Anda menjadi 3.0.

Jadi, perintah Anda adalah python3 -m http.server.


1099
2017-10-30 07:28



Yang setara adalah:

python3 -m http.server

166
2017-10-30 07:27



Menggunakan utilitas 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

107
2018-06-27 19:16



Jika Anda harus menggunakan penggunaan port yang berbeda:

python -m http.server 8080

42
2017-07-18 17:13



Selain jawaban Petr, jika Anda ingin mengikat ke antarmuka tertentu, bukan semua antarmuka Anda dapat menggunakan -b / - bendera bind.

python -m http.server 8000 --bind 127.0.0.1

Cuplikan di atas harus melakukan trik. 8000 adalah nomor port. 80 digunakan sebagai port standar untuk komunikasi HTTP.


25
2018-05-30 15:47



Dalam salah satu proyek saya, saya menjalankan pengujian terhadap Python 2 dan 3. Untuk itu saya menulis skrip kecil yang memulai server lokal secara mandiri:

$ 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 ...

Sebagai 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 ...

Harap dicatat bahwa saya mengontrol versi Python saya melalui lingkungan konda, karena itu saya bisa gunakan python dari pada python3 untuk menggunakan Python 3.


3
2017-10-05 22:32



jika Anda harus memilih direktori mana yang merupakan root untuk situs web, misalnya ./dist dan port 9000: kemudian gunakan:

untuk v3

pushd ./dist; python -m http.server 9000; popd

untuk 2.*

pushd ./dist; python -m SimpleHTTPServer 9000; popd

0
2018-02-20 17:32



Perintah python -m SimpleHTTPServer adalah untuk Linux. Gunakan Perintah python -m http.server 7777 untuk Windows


-19
2018-04-14 20:51