DAVID MALAN: Så for dette problemet sett, er du kommer til å implementere egen webserver. Vi har gitt deg en bit av skjelett kode som får deg i gang, men til syvende og sist, er du kommer til å fullføre det opp slik at det faktisk implementerer evnen å tjene opp nettsider, både statisk innhold og også dynamisk innhold, via PHP. La oss ta en titt, først ved veien for personalet løsning, på hva det endelige resultatet kommer til å bli. Jeg først kommer til å kjøre Tilda CS50 / pset6 / server og deretter dash p å spesifisere en port, og deretter et antall som 8080, noe som er ganske vanlig. Og deretter navnet eller stien til katalogen at jeg ønsker å bruke som web serverens rute, hvor alle filene kommer til å bli servert opp fra. Jeg kommer til å gå videre og trykk Enter. Og du vil se i farget tekst her at webserveren er bruker min offentlig katalog og det er å lytte på port 8080. Nå la oss gå over til en web nettleser og faktisk prøve for å koble til denne nettsiden. Varsel i høyre hjørne av apparatet, at det har vært alt denne gang en IP-adresse. Det er en unik identifikator for datamaskinen din som identifiserer det så at du kan få tilgang til det via nettleseren eller noen rekke andre verktøy. Så jeg kommer til å gå videre og åpne opp Chrome i apparatet og jeg kommer til å besøke http://172.16.254.133 og deretter kolon 8080. Og kolon viktig fordi hvis du ikke angir at porten som jeg også spesifisert på kommando linje, er du faktisk skal snakke inn til apparatets egen web server kalt Apache, som er bygget inn i den. Men i dag ønsker vi å fokusere på vår egen web server. Så nå når jeg trykker Enter, du vil legge merke til at 501 Ikke gjennomført kommer opp fordi jeg har prøvd å få tilgang til en katalog, ikke en bestemt fil. Faktisk, hvis du ser over til venstre i min terminal-vinduet, vil du se at mens lytter på port 8080, webserveren så en forespørsel om GET / HTTP / 1.1 og deretter webserveren svarte, som avbildet her i rød, med at 501 ikke implementert. Merkelig skjønt, det er også denne andre linje i hvitt, GET / favicon.ico HTTP / 1.1. Nå er jeg definitivt ikke gjøre det meg selv, men det viser seg at Chrome, som mange nettlesere, vil presumptuously anta at nettstedet ditt er ment å ha en liten grafisk ikonet opp i fanen eller neste til adresselinjen, som en Harvard crest eller noe langs disse linjene, og så er det bare å gjette ved måte av denne standard filnavn, at du kan ha en fil sånn også, som vi ikke gjør det. Og så 404 Not Found blir spytte tilbake. Vel nå, legge merke til dette. I tillegg til å besøke denne adressen inne av apparatet, 172.16.254.133:8080, men din IP-adresse, for å være klar, vil være forskjellig. Legg merke til at hvis jeg går på min Mac eller min PC til min egen nettleser og besøke den samme URL, kan jeg se fra min egen foretrukne nettleser enten det er Chrome eller Firefox eller IE eller noe annet, akkurat de samme resultater. OK. La oss faktisk besøke en nettadresse som er kjent å eksistere i det offentlige katalogen. Nemlig IP-adressen kolon 8080 / cat.jpg. Enter. Og der, ja, Happy Cat. Jeg vet på forhånd at det er også en cat.HTLM fil, så hvis jeg trykker Enter, Jeg ser at en også. Og legg merke til, i tiden, på den venstre vi har en hel haug med grønne utganger betegner at disse var 200 statuser, som betyr at de var OK.