Hovedoppgaven til webserveren er å håndtere HTTP -forespørslene fra klienten. Det venter på at HTTP -forespørslene kommer fra den aktuelle IP -adressen og portnummeret, håndterer forespørselen og sender klientens svar tilbake. Python bruker Simplehttpserver Modul for å opprette en webserver øyeblikkelig og enkelt tjene innholdet i filen fra serveren. Det kan brukes til fildeling også. For dette må du aktivere denne modulen med plasseringen av de delbare filene. Denne modulen kommer med Python -tolken. Du trenger ikke å installere det. Siden denne modulen er slått sammen med http.server modul i python3, så du må løpe http.server å kjøre webserveren i python3. Hvordan webserver kan brukes til å håndtere HTTP -forespørsel og dele filer, har blitt vist i denne opplæringen.
Kjør webserveren fra terminalen
Kjør følgende kommando for å kjøre webserveren fra terminalen. Hvis ikke noe portnummer er definert i kommandoen, starter webserveren på 8000 port som standard.
$ python3 -m http.server
Følgende utdata vises hvis webserveren startes riktig. Ctrl+C er trykket for å stoppe serveren.
Kjør følgende kommando for å starte webserveren på 8080 port.
$ python3 -m http.Server 8080
Følgende utdata vises hvis webserveren startes i 8080 -porten.
Kjør webserveren ved hjelp av Python -skript
Kjør følgende kommandoer for å opprette en mappe som heter Web og gå til mappen. Alle skriptfilene og HTML -filene til denne opplæringen vil bli opprettet i denne mappen.
$ mkdir web
$ CD Web
Lag en HTML -fil som heter testhtml.html inne i Web mappe med følgende skript. Denne filen vil bli servert fra webserveren senere.
testhtml.html
Gratulerer! Webserveren din kjører vellykket.
Besøk Linuxhint.com For flere opplæringsprogrammer på Python
Eksempel-1: Kjør webserveren i det spesifikke portnummeret
Lag en Python -fil med følgende skript for å kjøre webserveren på 8008 port. http.server modulen er importert for å kjøre webserveren, og SocketServer Modulen er importert for å håndtere HTTP -forespørselen fra 8080 -porten. Et objekt som heter Handler er opprettet for å håndtere HTTP -forespørslene. for alltid() Funksjon kalles for å kjøre webserveren. Ingen termineringsbetingelser er lagt til i skriptet. Så skriptet vil generere en feil når brukeren prøver å stoppe serveren.
# Importer servermodulProduksjon
Følgende utdata vises etter å ha utført skriptet ovenfor.
Listen over filene og mappen på skriptstedet vises hvis følgende URL blir utført fra nettleseren.
Hvis brukeren trykker på Ctrl+C fra terminalen eller trykker på stoppknappen fra Pycharm -redigereren, vises følgende feilmelding. Dette problemet har løst i neste eksempel på denne opplæringen.
Eksempel-2: Kjør webserveren med portnummeret definert av kommandolinje
Opprett en Python-fil med følgende skript for å kjøre en webserver i den aktuelle porten hvis kommandolinje-argumentet gir portnummeret; Ellers vil 5000 bli brukt som standardport. sys Modulen er importert i skriptet for å lese kommandolinje-argumentverdiene. prøve-bortsett fra Blokk er lagt til i skriptet for å håndtere feilen når brukeren prøver å stoppe serveren. Hvis tastaturinterrupt unntak vises etter å ha kjørt serveren, så er Lukk() Funksjon vil bli kalt for å stoppe webserveren.
# Importer servermodulProduksjon
Følgende utdata vises etter å ha utført skriptet ovenfor uten kommandolinje argumentverdi.
Følgende utdata vises hvis Kjør HTML -filen som opprettes i forrige trinn fra webserveren.
Åpne konfigurasjonsdialogboksen fra Run-menyen til Pycharm Editor for å angi kommandolinje-argumentverdien. Parameters felt brukes til å angi kommandolinjeargumentet, og 3000 er satt her som argumentverdien.
Følgende utdata vises hvis du kjører skriptet igjen etter å ha angitt argumentverdien.
Eksempel-3: Kjør webserveren med HTML-filen
Opprett en Python -fil med følgende skript for å kjøre webserveren ved å definere HTML -filen for basis -URL -en. Vertsnavnet og portnummeret har definert i begynnelsen av skriptet. Pythonsererver Klassen har definert i skriptet for å vise HTML -filen i nettleseren når webserveren begynner å kjøre.
# Importer servermodulenProduksjon
Følgende utdata vises som utfører skriptet ovenfor.
Følgende side vises i nettleseren hvis nettleserens base -URL for WebServer utfører.
Konklusjon
De forskjellige måtene å implementere webservere ved å bruke http. server Modulen har vist i denne opplæringen for å hjelpe Python -brukere med å opprette en enkel webserver i Python.