SPEAKER 1: Olgu, võtame vaadata, kuidas töötajad lahendus tegelikult tegutseb, nii et teil tajuksid, esimene välja kuidas veebiserver pidavat joosta ja kuidas tegelikult võite saan seda näidata oma arvutisse. Nii pilt siin. Olen juba paigaldatud CS50 ID pset6 dot zip, täpsustamine kohta. Olen mahalaadimist, ja ma olen CDED minu pset6 kataloogi. Üks esimesi asju, mida sa oled tahame seda teha, eriti Kui olete olnud kasutades CS50 IDE mängida koos viimaste loengud, kus Oleme kasutanud PHP CS50 IDE täpsemalt kasutades, et veebiserver nimetatakse Apache, millega saate alustada ja peatada selle käsu, Apache 50. Esiteks, minna ja kirjuta "Apache 50 peatus" lihtsalt veenduda, et kui sa olid järgmised mööda viimastel päevadel, ja sa sisse lülitatud Apache, sa oled lülitage see välja niimoodi peatades server. Nüüd, mida ma lähen tegema, on täpselt mida spec ütleb mulle, mida teha. Ma lähen Tilda CS50 kaldkriipsuga pset6 kaldkriipsuga server, ja lihtsalt Enter. Märkad, et ma karjusin mõned kasutamise teavet, kusjuures Ma peaks olema töökorras programmi server lisavarustuses kriips p ja siis pordi number, mida saab tegelikult jäta tühjaks sest Vaikimisi kohta spec, veebiserver läheb eeldada, et soovite port 8080. Vahepeal, siis võiks meenutada, et port 8080 ei ole tegelikult standard, pigem port 80 on number oleme rääkinud olemisest vaikimisi HTTP. Noh, selgub, et CS50 IDE lihtsalt konfigureerida viisil, nii et kui sa brauserit proovida külastada port 80 välismaailmaga, see saab sorteerida ning maagiliselt port edasi, või suunata ise, to port 8080 sees oma server ise. Nii et viimane asi siin on käsk line argument, tee marsruut. Ja et ma lihtsalt Tähendab, mida kausta ma tahan öelda server kasutada teenida kuni faile? Teisisõnu, kui kasutaja külastab kaldkriips, mida peaks ta näha? Noh, lähme edasi ja joosta täpselt, et jälle, Sel ajal, täpsustades, et ma tahan just minu veebiserver olema avalik kataloog, mis tuleb probleemsete seatud kuus jaotus koodi. Kui ma Enter, näete kollane siin meeldetuletus et mida kausta ma tegelikult kasutavad. Sel juhul on see pikk jada, "kodus ubuntu tööruumi pset6 avalik." Ja see viimane sõna on see, mis on peamine. Ja siis lõpuks ilmselt minu Serveri nüüd kuula port 8080. Mida ma järgmiseks lähen tegema, on meelde tuletada, et in CS50 ID üleval paremas nurgas ekraani, sa lähed, et näha URL, mis on ide50-username.cs50.io. Ja tõepoolest, kui klõpsate et sa pühitakse ära teise brauseri tab, et sel juhul läheb mulle näidata sisu minu veebiserverite juured. Teisisõnu, failid näete siin, kass dot HTML, kass dot JPEG, Favicon dot ico, hello dot HTML, hello dot php, ja test, on kõik sama sisu, et sa näeksid LS sees minu avalik kataloog. Ja mis on tore see, et kui ma lähen käia ja klõpsake nüüd kassi dot HTML, Ma näen kass dot HTML. Ja kui ma vajutan kass dot JPEG või hello dot HTML, või isegi kirjutad mu nime David, ja seejärel "tere öelda," näete, et kõik Failide tööta, sest töötajad lahust muidugi paigaldatud in CS50 ID on täiesti töökorras. Nii see toimib täpselt nii, nagu ise Lahus peab lõpuks tööle. Vahepeal, kui me läheme tagasi oma terminali aken, kus ma jooksin server käsk, teave, mida konsooli on öelnud. Ma näen siin, et esimene taotlus, mis Sain oli sõna otseses mõttes saada kaldkriipsuga kass dot HTML, HTTP versioon 1.1. Ja siis, roheline, mida personali lahendus on teinud on see, mis näitab mulle esimene rida väljund et server vastab koos. Teisisõnu, me oleme juba kirjutatud koodi mis avab selle virtuaalse ümbrikus, sisaldavate et get taotluse. Ja siis me vastame kasutaja kuid samaaegselt prindi väljund ekraani siin HTTP 1.1 200 OK kinnitada seda, mida me kasutusele tagastamise ümbrik, kui nii võib öelda, et me saata tagasi kasutaja. Ja mis siin toimub on et terminali aknas meil hakkab veebis server, ning seetõttu on see kuulates HTTP taotlusi TCP port 8080. Vahepeal minu veebibrauser, kui ma vajutan läbi iga neid faile, või isegi sisend minu nimi David, ja seejärel klõpsake Submit see on minu brauser rääkides veebiserver. Ja mida veebiserver teeb, siis, et terminali aknas näitab mulle täpselt esimene rida, mis on laekunud virtuaalses ümbriku ja täpselt esimene rida, mis kuramuse vastas sellele web klient.