David Malan: So vir hierdie probleem stel, is jy
gaan implementeer jou eie web server.
Ons het u verskaf met 'n bietjie geraamte kode wat kry jy begin het,
maar uiteindelik, jy is gaan om dit te voltooi
up so dat dit eintlik implemente die vermoë om
om te dien aan webblaaie, beide statiese inhoud en ook dinamiese inhoud,
via PHP.
>> Kom ons neem 'n blik, eers deur weg van die personeel oplossing,
na wat die finale uitslag gaan wees.
Ek gaan eers te hardloop Tilda cs50 / pset6 / bediener
en dan stamp p te spesifiseer 'n hawe en dan 'n aantal
soos 8080, wat is redelik algemeen.
En dan is die naam of die pad na gids
wat ek wil gebruik as die web bediener se roete, waar al die lêers
gaan word uit gedien.
Ek gaan om voort te gaan en druk Enter.
En jy sal sien in kleur teks hier dat die web-bediener is
die gebruik van my openbare gids en dit luister op poort 8080.
Nou laat ons gaan oor na 'n web leser en eintlik probeer
te koppel aan hierdie webwerf.
Kennisgewing in die onderste regterkantste hand hoek van jou toestel,
dat daar is alles hierdie tyd 'n IP-adres.
Dit is 'n unieke identifiseerder vir jou rekenaar
wat identifiseer dit so dat jy dit kan oopmaak
via web browser of enige aantal ander instrumente.
So ek gaan om voort te gaan en oop Chrome in die toestel
en ek gaan om te besoek http://172.16.254.133 en dan
kolon 8080.
En die kolon se belangrik, want as jy spesifiseer nie daardie hawe dat ek ook
gespesifiseerde by die opdrag lyn, jy is eintlik
gaan praat in die toestel se eie web
bediener genoem Apache, wat gebou is in dit.
Maar vandag wil ons fokus op ons eie web server.
>> So nou wanneer ek druk Enter, jy sal sien dat 501
Nie geïmplementeer kom omdat ek probeer
'n gids om toegang te verkry, nie 'n spesifieke lêer.
Inderdaad, as jy kyk na links in my terminale venster,
jy dat terwyl sien luister op poort 8080,
die web bediener het 'n versoek vir AOO / HTTP / 1.1 en dan die web bediener
gereageer, soos op die foto hier in rooi, met daardie 501 nie geïmplementeer nie.
>> Vreemd genoeg al is, daar is ook hierdie tweede lyn in wit,
AOO / favicon.ico HTTP / 1.1.
Nou het ek beslis nie doen nie myself, maar dit blyk dat Chrome,
soos 'n baie webblaaiers sal deur vermetelheid aanvaar dat jou webwerf
veronderstel is om 'n bietjie te hê grafiese ikoon in die blad of langs
na die adres bar, soos 'n Harvard kruin of iets langs die lyne,
en so is dit net raai deur weg van hierdie standaard lêer naam,
dat jy kan 'n lêer soos dit ook, wat ons doen nie.
En so 404 nie gevind kry terug spoeg.
>> Wel nou, dit agterkom.
In bykomend tot die besoek hierdie adres in
van die toestel, 172.16.254.133:8080, maar jou IP-adres, om duidelik te wees,
sal anders wees.
Let daarop dat as ek gaan op my Mac of my PC aan my eie browser
en besoek dieselfde URL, kan ek sien uit my eie voorkeur leser
of dit nou Chrome of Firefox of IE of iets anders, presies
dieselfde resultate.
>> OK.
Kom ons eintlik 'n URL wat bekend is besoek om te bestaan ​​in die openbare gids.
Naamlik die IP adres kolon 8080 / cat.jpg.
Betree.
En daar, inderdaad, is gelukkige Cat.
Ek weet by voorbaat dat daar ook 'n cat.HTLM lêer, so as ek druk Enter,
Ek sien dat die een so goed.
En let op, in die Intussen aan die linkerkant ons
het 'n hele klomp van die groen uitsette te dui
dat hierdie 200 statusse, wat beteken hulle was OK.