DAVID MALAN: Så för detta problem set, du kommer att genomföra ditt egen webbserver. Vi har försett er med en bit av skelett kod som får dig igång, men i slutändan, du är kommer att avsluta det upp så att det faktiskt implementerar förmågan att tjäna upp webbsidor, både statiska innehåll och även dynamiskt innehåll, via PHP. Låt oss ta en titt, först genom sätt av personalen lösningen, på vad slutresultatet kommer att bli. Jag först kommer att köra tilda CS50 / pset6 / server och sedan dash p ange en port och sedan ett nummer som 8080, vilket är ganska vanligt. Och sedan namnet eller sökvägen till katalogen som jag vill använda som webben serverns rutt, där alla filer kommer att serveras upp från. Jag ska gå vidare och tryck på Retur. Och du ser i färgtext här att webbservern är använder min offentliga register och det är att lyssna på port 8080. Nu går vi över till en webbsida webbläsare och faktiskt försöker för att ansluta till denna webbplats. Kallelse i det nedre högra hörnet av apparaten, att det har varit allt denna tidpunkt en IP-adress. Det är en unik identifierare för din dator som identifierar det så att du kan komma åt den via webbläsare eller något antal andra verktyg. Så jag ska gå vidare och öppna Chrome i apparaten och jag kommer att besöka http://172.16.254.133 och sedan kolon 8080. Och kolon är viktigt eftersom om du behöver inte ange den porten som jag också specificeras på kommando line, du är faktiskt kommer att tala in apparatens egen webb server som heter Apache, som är inbyggd i den. Men idag vill vi fokusera på vår egen webbserver. Så nu när jag slog in, du kommer att märka att 501 Inte Genomfört kommer upp eftersom jag har provat för att komma åt en katalog, inte en viss fil. Faktum är att om man tittar över till vänster i mitt terminalfönster, ser du att medan lyssnar på port 8080, webbservern såg en begäran om GET / HTTP / 1.1 och sedan webbservern svarade, som på bilden här i röd, med det 501 inte genomförs. Märkligt dock, det finns också denna andra raden i vitt, GET / favicon.ico HTTP / 1.1. Nu har jag definitivt inte gjorde det själv, men det visar sig att Chrome, som en hel del webbläsare, kommer förmätenhet antar att din webbplats är tänkt att ha en liten grafisk ikonen uppe i fliken eller nästa till adressfältet, som en Harvard krön eller något i den stilen, och så det är bara gissa efter sätt av denna standard filnamn, att du kanske har en fil gillar det också, vilket vi inte gör. Och så 404 Not Found blir spotta tillbaka. Nåväl nu, märker detta. Förutom att besöka denna adress inne av apparaten, 172.16.254.133:8080, men din IP-adress, för att vara tydlig, kommer att vara annorlunda. Lägg märke till att om jag går på min Mac eller min dator till min egen webbläsare och besöka samma webbadress, jag kan se från min egen föredragna browser oavsett om det är Chrome eller Firefox eller IE eller något annat, precis samma resultat. OK. Låt oss faktiskt besöka en URL som är känd att existera i den offentliga katalogen. Nämligen, den IP-adress kolon 8080 / cat.jpg. Enter. Och där, faktiskt, är lyckliga katten. Jag vet i förväg att det finns också en cat.HTLM fil, så om jag slog Enter, Jag ser att en också. Och märker, i Under tiden, på vänster vi har en hel massa gröna utgångar betyda att dessa var 200 statusar, vilket innebär att de var OK.