DAVID MALAN: Quindi per questo problema insieme, sei
andando a implementare la vostra molto proprio server web.
Vi abbiamo fornito con un po 'di codice scheletro che ti fa iniziare,
ma alla fine, sei andando a finire
in modo che in realtà implementa la capacità
per servire le pagine web, sia statica contenuto e anche contenuti dinamici,
via PHP.
>> Diamo uno sguardo, prima di tutto modo della soluzione personale,
a ciò che il risultato finale sarà.
Io prima di andare a correre tilda CS50 / pset6 / server
e poi precipitare p specificare una porta e poi un numero
come 8080, che è abbastanza comune.
E poi il nome o il percorso della directory
che voglio usare come web route server, dove tutti i file
stanno per essere servito da.
Ho intenzione di andare avanti e premere Invio.
E vedrete il testo di colore qui che il web server è
usando il mio elenco pubblico e è in ascolto sulla porta 8080.
Ora andiamo verso un web browser e realmente provare
per connettersi a questo sito.
Avviso in basso a destra angolo mano del vostro apparecchio,
che c'è stato tutto questa volta un indirizzo IP.
Questo è un identificatore univoco per il computer
che identifica così che vi si possa accedere
via browser web o qualsiasi numero di altri strumenti.
Quindi ho intenzione di andare avanti e aprire Chrome nell'apparecchio
e ho intenzione di visitare http://172.16.254.133 e poi
colon 8080.
E i due punti di importante, perché se non si specifica che la porta che ho anche
specificato al comando linea, si sta effettivamente
andando a parlare in dell'apparecchio proprio web
server chiamato Apache, che è costruito in esso.
Ma oggi vogliamo concentrarci sul nostro server web.
>> Così ora, quando ho colpito Enter, si noterà che 501
Non implementato arriva up perché ho provato
per accedere a una directory, Non un particolare file.
Infatti, se si guarda verso sinistra nella mia finestra di terminale,
vedrete che, mentre in ascolto sulla porta 8080,
il server web ha visto la richiesta di GET / HTTP / 1.1 e quindi il server web
ha risposto, come nella foto qui in rosso, con quel 501 non implementato.
>> Curiosamente, però, c'è anche questa seconda linea di bianco,
GET / favicon.ico HTTP / 1.1.
Ora io sicuramente non ho fatto che io stesso, ma si scopre che Chrome,
come un sacco di browser, sarà presuntuosamente supporre che il vostro sito
si suppone di avere un piccolo sull'icona grafica nella scheda o successivo
alla barra degli indirizzi, come un Harvard stemma o qualcosa del genere,
e così è solo indovinare da modo di questo nome di file predefinito,
che si potrebbe avere un file come anche questo, che non lo facciamo.
E così 404 Not Found ottiene sputare indietro.
>> Bene, ora, notare questo.
Oltre alla visita questo indirizzo dentro
dell'apparecchio, 172.16.254.133:8080, ma il vostro indirizzo IP, per intenderci,
sarà diverso.
Notate che se vado sul mio Mac o il mio PC al mio navigatore
e visitare lo stesso URL, posso vedere dal mio browser preferito
che si tratti di Chrome o Firefox o IE o qualcos'altro, esattamente
gli stessi risultati.
>> OK.
Facciamo in realtà visitare un URL che è noto di esistere in quella directory pubblica.
Vale a dire, l'indirizzo IP colon 8080 / cat.jpg.
Invio.
E lì, in effetti, è Cat Felice.
So in anticipo che c'è anche un file cat.HTLM, quindi se ho colpito Enter,
Vedo che uno pure.
E notare, nel Intanto, sul abbiamo lasciato
hanno un sacco di uscite verdi significanti
che questi erano stati 200, il che significa che erano OK.