Cara Memulakan Pelayan Web Mudah dalam Python 3 pada Mac

Isi kandungan:

Anonim

Jika anda pengguna Python, anda mungkin sudah biasa dengan helah berguna yang membolehkan anda mencipta pelayan web ringkas dengan serta-merta menggunakan rentetan arahan mudah yang dimasukkan dalam baris arahan Mac OS. Tetapi jika anda pengguna Mac Python yang telah memasang atau mengemas kini kepada Python 3, maka anda akan mendapati rentetan arahan tradisional daripada versi Python terdahulu tidak berfungsi untuk memulakan pelayan web dalam Python 3 baharu.x+ keluaran.

Jangan risau, helah Python pelayan web yang mudah masih berfungsi dalam Python 3 untuk Mac (dan untuk Linux dan Windows juga sudah tentu, tetapi kami jelas merangkumi MacOS), kerana sintaks arahannya adalah cuma berbeza sedikit. Kami akan menunjukkan kepada anda cara memulakan pelayan web ringkas dengan Python 3 dengan menggunakan Python 3.0+ baharu bersamaan dengan perintah python -m SimpleHTTPServer.

Cara Memulakan Pelayan HTTP Web dalam Python 3.0+

Kami mengandaikan anda telah memasang atau mengemas kini kepada Python 3.0+ pada Mac, variasi arahan ini memerlukan Python 3.0 atau lebih baharu.

Dari baris arahan, masukkan sintaks berikut dengan tepat:

python -m http.server

OR (bergantung pada cara Python 3.x dipasang dan dinamakan):

python3 -m http.server

Hit return dan Python 3 akan serta-merta memulakan pelayan HTTP ringkas daripada direktori di mana arahan itu dilaksanakan.

Http.server dalam Python 3 akan dijalankan di terminal, jika tiada fail web dalam direktori daripada indeks direktori itu sendiri akan ditunjukkan.

Anda boleh menguji ini dengan segera dengan membuka URL berikut dalam mana-mana pelayar web pada komputer:

http://0.0.0.0:8000

Semua aktiviti pelayan web, seperti mengakses fail individu, folder, direktori, dll, akan ditunjukkan dalam tetingkap terminal Python aktif secara langsung semasa ia berlaku, seperti mengekori log web pada pelayan Apache atau Nginx .

Nota Penting: jika anda memasang python dan python3 secara serentak, anda mungkin perlu menukar sedikit sintaks untuk merujuk python3 dan python2 atau versi python yang lain. Ini bergantung pada cara anda mengemas kini kepada Python 3 pada Mac, tetapi contoh biasa akan menggunakan arahan 'python3' sebaliknya:

python3 -m http.server

Sama seperti sebelumnya, tekan return dan direktori aktif akan bertukar menjadi pelayan web.

Apakah Python3 yang setara dengan python -m CGIHTTPServer?

Helah biasa yang lain ialah menggunakan pelayan CGI (Antara Muka Gerbang Biasa) dalam Python untuk skrip CGI dalam python atau perl. Oleh itu, jika anda perlu menjalankan python3 bersamaan dengan arahan "python -m CGIHTTPServer" untuk CGI yang akan menjadi seperti berikut:

python3 -m http.server --cgi

Sebagai alternatif, jika Python 3 dipasang dan dinamakan sebagai python, arahannya ialah:

python -m http.server --cgi

Sama ada cara anda memerlukan bendera –cgi untuk memulakan pelayan HTTP CGI dalam Python 3.

Saya mendapat ralat mengatakan “/usr/bin/python: Tiada modul bernama http” sekarang apa?

Jika anda melihat ralat "/usr/bin/python: Tiada modul bernama http" semasa cuba melaksanakan rentetan arahan python -m http.server maka kemungkinan besar anda tidak menjalankan Python 3, atau anda menggunakan arahan yang salah untuk python3 (iaitu python vs python3, bergantung pada cara versi dinamakan dan cara ia dipasang atau dikemas kini pada Mac). Mungkin juga Python tidak dipasang pada komputer sama sekali, walaupun itu kurang berkemungkinan untuk Mac kerana Python2 dipasang secara lalai pada Mac OS, walaupun pengguna mesti memasang Python 3.x yang dikemas kini secara manual pada Mac, yang pada masa yang sama mengekalkan yang asal Versi keluaran Python 2.x. Biasanya ini dicapai dengan Homebrew.

Tukar sintaks seperti yang dirujuk di atas, atau jika anda menggunakan versi Python yang lebih awal cuba perintah "python -m SimpleHTTPServer" daripada Python 2 dan sebelumnya.

Sudah tentu pelayan web ringkas python tidak dimaksudkan untuk persekitaran pengeluaran dan ia adalah yang terbaik untuk pad calar pantas atau persekitaran ujian. Jika anda ingin menjalankan pelayan web yang dihadapi secara terbuka atau hanya lebih mantap secara umum, anda ingin menggunakan sesuatu seperti Apache atau Nginx, walaupun mengkonfigurasinya secara individu pada Mac memerlukan beberapa persediaan. Pilihan yang lebih mudah untuk persekitaran pelayan web penuh pada Mac ialah menggunakan MAMP, yang menjadikan penyediaan dan memulakan persekitaran Apache, MySQL, PHP penuh pada Mac semudah yang diperolehi.

Adakah anda tahu petua atau helah Python lain yang menarik? Adakah anda tahu mana-mana rentetan arahan python lain yang berguna untuk memulakan pelayan http atau sebaliknya? Kongsi dengan kami dalam komen di bawah!

Cara Memulakan Pelayan Web Mudah dalam Python 3 pada Mac