Kā palaist vienkāršu tīmekļa serveri Python 3 operētājsistēmā Mac
Satura rādītājs:
Ja esat Python lietotājs, iespējams, jau esat iepazinies ar parocīgo triku, kas ļauj uzreiz izveidot vienkāršu tīmekļa serveri, izmantojot vienkāršu komandu virkni, kas ievadīta Mac OS komandrindā. Bet, ja esat Mac Python lietotājs, kurš ir instalējis vai atjauninājis Python 3, jūs atradīsiet, ka tradicionālā komandu virkne no iepriekšējām Python versijām nedarbojas, lai aktivizētu tīmekļa serveri jaunajā Python 3.x+ izlaidumi.
Neuztraucieties, vienkāršais tīmekļa servera Python triks joprojām darbojas Python 3 operētājsistēmā Mac (un, protams, arī Linux un Windows, taču mēs, protams, aptveram MacOS), komandas sintakse ir tikai nedaudz savādāk. Mēs jums parādīsim kā palaist vienkāršu tīmekļa serveri ar Python 3, izmantojot jauno Python 3.0+ ekvivalentu komandai python -m SimpleHTTPServer.
Kā palaist Web HTTP serveri programmā Python 3.0+
Mēs pieņemam, ka Mac datorā jau esat instalējis vai atjauninājis Python 3.0+, šim komandas variantam ir nepieciešama Python 3.0 vai jaunāka versija.
No komandrindas precīzi ievadiet šādu sintaksi:
python -m http.serveris
OR (atkarībā no Python 3.x instalēšanas un nosaukuma):
python3 -m http.serveris
Nospiediet return, un Python 3 uzreiz sāks vienkāršu HTTP serveri no direktorija, kurā tika izpildīta komanda.
Python 3 http.serveris darbosies terminālī, ja direktorijā nav tīmekļa faila, tiks parādīts pats direktorija indekss.
Varat to nekavējoties pārbaudīt, jebkurā datora tīmekļa pārlūkprogrammā atverot šādu URL:
http://0.0.0.0:8000
Visas tīmekļa servera darbības, piemēram, piekļuve atsevišķiem failiem, mapēm, direktorijiem utt., tiks rādītas aktīvajā Python termināļa logā, kā tas notiek, piemēram, tīmekļa žurnālu ievietošana Apache vai Nginx serverī. .
Svarīga piezīme: ja python un python3 ir instalēti vienlaikus, iespējams, būs nedaudz jāmaina sintakse, lai norādītu uz python3 un python2 vai citu python versiju. Tas būs atkarīgs no tā, kā Mac datorā veicāt atjaunināšanu uz Python 3, taču izplatīts piemērs ir komandas “python3” izmantošana:
python3 -m http.serveris
Tāpat kā iepriekš, nospiediet taustiņu return, un aktīvais direktorijs tiks pārvērsts par tīmekļa serveri.
Kas ir Python3 ekvivalents python -m CGIHTTPServer?
Cits izplatīts triks ir izmantot CGI (Common Gateway Interface) serveri Python CGI skriptiem python vai perl. Tādējādi, ja jums ir nepieciešams palaist python3 ekvivalentu komandai “python -m CGIHTTPServer” CGI, tas būtu šāds:
python3 -m http.server --cgi
Alternatīvi, ja Python 3 ir instalēts un nosaukts kā python, komanda vienkārši būtu:
python -m http.server --cgi
Lai palaistu CGI HTTP serveri Python 3 versijā, jebkurā gadījumā būs nepieciešams karodziņš –cgi.
Es saņemu kļūdas ziņojumu “/usr/bin/python: Nav moduļa ar nosaukumu http”, ko tagad?
Ja, mēģinot izpildīt python -m http.server komandas virkni, redzat kļūdu “/usr/bin/python: Nav moduļa ar nosaukumu http”, tad, visticamāk, jūs nedarbināt Python 3 vai jūs izmantojat nepareizu python3 komandu (t.i., python vs python3, atkarībā no versijas nosaukuma un tā, kā tā tika instalēta vai atjaunināta operētājsistēmā Mac). Iespējams arī, ka Python datorā vispār nav instalēts, lai gan Mac datoriem tas ir mazāk ticams, jo Python2 pēc noklusējuma ir instalēts operētājsistēmā Mac OS, lai gan lietotājiem Mac OS ir manuāli jāinstalē atjauninātā Python 3.x versija, kas vienlaikus saglabā sākotnējo versiju. Python 2.x laidiena versija. Parasti to panāk, izmantojot Homebrew.
Mainiet sintaksi, kā norādīts iepriekš, vai, ja izmantojat vecāku Python versiju, izmēģiniet komandu “python -m SimpleHTTPServer” no Python 2 un agrāk.
Protams, python vienkāršie tīmekļa serveri nav paredzēti ražošanas vidēm, un tie patiešām ir vislabākie ātrai scratchpad vai testa videi. Ja vēlaties palaist tīmekļa serveri, kas ir publiski pieejams vai vienkārši izturīgāks, ieteicams izmantot tādus rīkus kā Apache vai Nginx, lai gan, lai tos atsevišķi konfigurētu Mac datorā, ir nepieciešama iestatīšana. Vienkāršāka iespēja pilnai tīmekļa servera videi Mac datorā ir izmantot MAMP, kas ļauj iestatīt un palaist pilnu Apache, MySQL, PHP vidi Mac datorā.
Vai zināt kādus citus interesantus Python padomus vai trikus? Vai zināt kādas citas noderīgas python komandu virknes http serveru palaišanai vai kā citādi? Dalieties ar mums komentāros zemāk!