>> SPEAKER 1: Ok, la oss ta en se på hvordan de ansatte løsningen faktisk
driver, slik at du får en følelse, først av
hvordan webserveren er ment å kjøre, og hvordan du faktisk kan
få den kjører på din egen datamaskin.
Så bildet det her.
Jeg har allerede installert i CS50 ID pset6 dot zip, per spesifikasjonen.
Jeg har pakket det, og jeg har CDED inn i min pset6 katalogen.
En av de første tingene du er kommer til å ønske å gjøre, spesielt
hvis du har brukt en CS50 IDE å spille sammen med de siste foredrag, hvor
vi har brukt PHP i CS50 IDE, spesifikt,
ved hjelp av det web server kalt Apache, hvor du kan starte og stoppe det
med den kommandoen, Apache 50.
Først, gå videre og skriver "Apache 50 stop"
bare for å være sikker på at hvis du var følge med de siste dagene,
og du slått på Apache, er du slå den av på denne måten
ved å stoppe serveren.
Nå, hva jeg skal gjøre er nøyaktig hva spec forteller meg å gjøre.
Jeg kommer til å gå til Tilda CS50 slash pset6 slash server, hit og bare Enter.
Du vil merke at jeg skrek til med noen bruksinformasjon, hvorved
Jeg skal kjøre programmet som server
med en valgfri strek p og deretter en portnummeret, som du faktisk kan
la stå tom for ved Standard, per spec,
webserveren skal anta at du vil port 8080.
I mellomtiden kan du huske at port 8080 er egentlig ikke standard,
snarere port 80 er nummeret vi har snakket
om å være standard for HTTP.
Vel, det viser seg at CS50 IDE er bare utformet på en slik måte,
slik at når du med en nettleser prøve å besøke port 80 fra omverdenen,
det kommer til å sortere av magisk port fremover, eller endrer selv,
til port 8080 inne av serveren selv.
>> Så det siste her er kommandoen linje argument, banen til rute.
Og etter at jeg bare mener, hvilken mappe gjør jeg
ønsker å fortelle serveren å bruke for å tjene opp filer?
Med andre ord, hvis brukeren besøker slash, hva skal han eller hun se?
Vel, la oss gå videre og kjøre akkurat det igjen,
denne gangen å spesifisere at jeg ønsker roten til min web server
å være offentlig katalog, som kommer med problemet satt seks distribusjon kode.
Når jeg trykker Enter, vil du se i gult her, en påminnelse
som til hvilken mappe jeg faktisk bruker.
I dette tilfellet er det en lang streng, "hjem ubuntu arbeidsområde pset6 publikum."
Og det siste ordet er det som er nøkkelen.
Og så til slutt, tilsynelatende, min Serveren er nå lytter på port 8080.
>> Det jeg neste kommer til å gjøre er å huske at i CS50 ID i øvre høyre hjørne
på skjermen, du kommer til å se en nettadresse som er ide50-username.cs50.io.
Og ja, hvis du klikker det, vil du bli revet vekk
til en annen nettleser fane, at i dette tilfellet
kommer til å vise meg innholdet av mine webservere røtter.
Med andre ord, de filene du ser her, katt dot HTML, katt dot JPEG, favicon dot
ico, hallo dot HTML, hei dot php, og test,
er alle av samme Innholdet som du ville se
med LS innsiden av min offentlige katalogen.
Og hva er hyggelig er at hvis jeg går videre og klikk nå på katten dot HTML,
Jeg ser katten dot HTML.
Og hvis jeg klikker på katt dot JPEG, eller hallo dot HTML,
eller skriv i mitt navn David, og deretter "si hei"
vil du se at alle de filer fungerer fordi ansatte
løsning, selvfølgelig, installert i CS50 ID er fullt funksjonell.
Så det fungerer akkurat som din egen Løsningen bør til slutt fungere.
>> I mellomtiden, hvis vi går tilbake til min terminal vindu, hvor jeg kjørte kommandoen server,
legge merke til hva konsollen har å si.
Jeg ser her at den første forespørselen som Jeg fikk bokstavelig talt få slash katt
dot HTML, HTTP versjon 1.1.
Og så, i grønt hva personalet løsningen har gjort
er det å vise meg første linje av utgangs
at web-serveren svarer med.
Med andre ord, vi har allerede skrevet inn koden
som åpner opp den virtuelle konvolutt, inneholder som får forespørsel.
Og da vi svare på det brukeren, men samtidig,
skrive ut til utgangen skjermen her HTTP 1.1, 200 OK
å bekrefte hva vi legger i returkonvolutt, så å si,
at vi sender tilbake til brukeren.
>> Og så hva som skjer her er at i terminalvindu
vi kjører på nettet server, og derfor er det
lytting for HTTP forespørsler på TCP port 8080.
I mellomtiden, i min nettleser, som jeg klikker gjennom hver
av disse filene, eller til og med innspill min navngi David, og klikk deretter Submit,
som er nettleseren min snakker til webserveren.
Og hva webserveren er dette gjort, deretter, ved at terminalvindu
viser meg nøyaktig den første linjen som er
blitt mottatt i et virtuelt konvolutt og nøyaktig
den første linjen det er å være svarte med å at webklient.