>> SPEAKER 1: Olgu, mis siis see on Teie konkreetne pean tegema?
Noh, muutub seal on lihtsalt neli funktsiooni
et teil on vaja rakendada kelle funktsioon on
lahutamatu õige toimimise veebiserver,
kuid mille kõik käitumine on väga kitsalt
määratletud, nii et nad ainult teha päris palju üks asi.
Esimene asi, mida sa lähed vaja teha, on rakendada,
täpsustamine kohta, lookup funktsioon.
See on üsna lihtne funktsiooni Lõpuks, mis võtab argumendiks
olenemata faili asukoht et kasutaja tahab taotleda,
ja sa pead kohustust reageerida Niinimetatud MIME tüübile, või Content-type,
Selle faili.
Näiteks, kui see on selline fail, hello dot
HTML sa lähed reageerivad MIME tüüpi quote lõppeb teksti kaldkriipsuga HTML.
>> Või kui see on pilt, võiksite reageerida pilti dot kaldkriipsuga
Jiff või pilti kärpida JPEG.
Vaata kirjeldust erinevate failivorminguid peate avastada.
Aga see tõesti taandub võttes vaadata tee, et olete varem,
ja vaadates oma faili laiendamine, viimastel tähemärki
pärast trailing perioodi või dot.
Nii me jätan selle sulle mõned ja vihjed spetsifikatsioon
välja nuputada, kuidas täpselt leida et dot ja faililaiend
nii et võite teha kaardistamise ühest teise.
>> Järgmisena on sõeluda funktsiooni.
Nii et see üks on natuke rohkem seotud, et
teil on vaja võtta, et argument [kuuldamatu]
see kordasid üle, iseloomu jaoks märk, või string nööri,
et veenduda et see vastab täpselt
ametlik määratlus, et esimene Taotluse line, nagu täpsustamine kohta.
Ja sa pead laadida absoluutseks tee, mis substring, mis tähistab
midagi, kaldkriips hello dot HTML.
Vahepeal valikuliselt, pärast seda tee võib olla küsimärk
ja siis päringustringiga nagu, q võrdub kassid,
või q võrdub kassid ampersand, ja siis teine ​​põhiväärtus paari.
Nii et sa lähed vaja samm üle need märgid,
samuti, kuni selle Esimene ruum, et
luua string et kauplustes sees on päringustringiga ise.
Järgmine, sa lähed rakendada koormust funktsiooni.
Nii selgub, kui te vaatate läbi lähtekoodi, kui spec suunab,
koormuse funktsiooni kasutatakse kahes kohas.
See on kas kasutatud laadimiseks väljund PHP tõlk.
Ja me kirjutasime kõik PHP käitlemise koodi
kuid see ei pea kasutage funktsiooni nimetatakse
koormus, mis sisuliselt loeb kõik baiti väljund PHP tõlk
suurde massiivi.
>> Sama funktsiooni koormus kasutatakse ka last
mällu kõik baiti failist nagu, silmapilk, või JPEG või dot HTML
faili, et kasutaja on taotlenud.
Nii et sa pead kasutama mõne trikke ja tööriistad probleem seatud 4 faili IO,
kuid siis tuleb leida, et suhteliselt tuttav ja kena viis loodetavasti
sidumine koos uuemad web kraami koos vanemate faili IO kraami.
>> Lõpuks indeksid funktsiooni, kõik mida sa pead tegema
on otsustada, kas on või ei ole olemas mõned faili tõhusalt
nimetatakse index dot HTML või index dot PHP, sees kataloog, kelle teed sa
on minevikus.
Ümber see tähendab, et kui kasutaja ei taotleda kataloog,
Me ei ole lihtsalt läheb näidata talle või tema sisu on kataloogi,
me sõna otseses mõttes näitavad need index dot HTML või index dot PHP, vaikimisi.
Aga see läheb jätta teile nuputada, kasutades mõned vihjed
lähtekoodi, et me oleme juba andnud teile,
kuidas tegelikult võite vaadata kas teatud fail on olemas
aktiivses kataloogis, nii et võite pöörduda õige vastus.
>> Nii et lõpuks seal suhteliselt vähe baiti
et teil on vaja võtta välja Probleem rakendamiseks sätestatud serveri
puudulikud funktsionaalsust.
Aga kindlasti veenduge murrab meelt umbes sama palju kood
kui võimalik, võttes mugavust, et sa seda ei tee
on vaja mõista kõiki madalaimale tasemele võrgustike kood, kõik
madalaima taseme faili IO koodi.
Tõesti, mida me teeme Selle probleemiga komplekt
on sünteesida möödunud mitu probleemi komplekti, lisades natuke WebLogic,
ja võrgustike mõistete, nii et lõpuks sa
ehitada midagi, mis on tegelikult üsna huvitav, tõesti üsna võimas,
kuid siiski kasutada Sama ehitusplokkide
et me oleme kasutanud juba mõnda aega.