1 00:00:00,000 --> 00:00:00,160 2 00:00:00,160 --> 00:00:02,660 >> SPEAKER 1: Va bene, facciamo un guardate come la soluzione personale effettivamente 3 00:00:02,660 --> 00:00:04,760 opera, in modo che si ottenere un certo senso, in primo luogo fuori 4 00:00:04,760 --> 00:00:06,930 come suppone il server web a correre, e come si può effettivamente 5 00:00:06,930 --> 00:00:08,480 farlo in esecuzione sul proprio computer. 6 00:00:08,480 --> 00:00:09,350 Quindi immaginare qui. 7 00:00:09,350 --> 00:00:13,640 Ho già installato in CS50 ID pset6 zip puntino, secondo la specifica. 8 00:00:13,640 --> 00:00:16,197 Ho decompresso, e ho CDED nella mia directory pset6. 9 00:00:16,197 --> 00:00:18,780 Una delle prime cose che ti intenzione di voler fare, soprattutto 10 00:00:18,780 --> 00:00:22,010 se hai utilizzato un IDE CS50 per giocare insieme con lezioni recenti, in cui 11 00:00:22,010 --> 00:00:25,640 abbiamo usato PHP CS50 IDE, in particolare, 12 00:00:25,640 --> 00:00:29,050 usando che il web server chiamato Apache, per cui è possibile avviare e fermare 13 00:00:29,050 --> 00:00:30,910 con questo comando, Apache 50. 14 00:00:30,910 --> 00:00:34,160 In primo luogo, andare avanti e digitare "Stop Apache 50" 15 00:00:34,160 --> 00:00:37,370 solo per assicurarsi che se si dovesse seguendo lungo nei giorni scorsi, 16 00:00:37,370 --> 00:00:40,090 e si è attivata su Apache, sei spegnendolo in questo modo 17 00:00:40,090 --> 00:00:41,360 arrestando il server. 18 00:00:41,360 --> 00:00:44,110 Ora, che cosa ho intenzione di fare è esattamente ciò che le specifiche mi dice di fare. 19 00:00:44,110 --> 00:00:49,770 Ho intenzione di andare a Tilda CS50 barra Server barra pset6, e basta premere Invio. 20 00:00:49,770 --> 00:00:52,840 Noterete che sto urlato con alcune informazioni di utilizzo, per cui 21 00:00:52,840 --> 00:00:54,960 Dovrei essere in esecuzione il programma come di server 22 00:00:54,960 --> 00:00:58,230 con un pizzico p opzionale e quindi una il numero di porta, che si può effettivamente 23 00:00:58,230 --> 00:01:00,720 lasciare in bianco perché, di default, per la specifica, 24 00:01:00,720 --> 00:01:04,010 il server web sta per si supponga di voler porta 8080. 25 00:01:04,010 --> 00:01:07,560 Nel frattempo, si potrebbe ricordare che la porta 8080 non è davvero di serie, 26 00:01:07,560 --> 00:01:09,380 piuttosto la porta 80 è la numero abbiamo parlato 27 00:01:09,380 --> 00:01:11,440 di essere il valore predefinito per HTTP. 28 00:01:11,440 --> 00:01:14,870 Ebbene, risulta che CS50 IDE è semplicemente configurato in un modo, 29 00:01:14,870 --> 00:01:18,730 in modo tale che quando si tenta con un browser visitare porta 80 dal mondo esterno, 30 00:01:18,730 --> 00:01:22,210 sta andando a ordinare di magia porta avanti, o reindirizzare sé, 31 00:01:22,210 --> 00:01:25,200 alla porta 8080 all'interno del server stesso. 32 00:01:25,200 --> 00:01:29,330 >> Quindi l'ultima cosa che qui è il comando argomento della riga, il percorso di percorso. 33 00:01:29,330 --> 00:01:31,590 E con questo voglio solo Cioè, quale cartella devo 34 00:01:31,590 --> 00:01:34,820 voglio dire al server da utilizzare per servire i file? 35 00:01:34,820 --> 00:01:39,030 In altre parole, se l'utente visita taglio su, che cosa dovrebbe lui o lei vedere? 36 00:01:39,030 --> 00:01:41,030 Bene, andiamo avanti e eseguire esattamente che ancora una volta, 37 00:01:41,030 --> 00:01:43,940 questa volta precisando che io volere la radice del mio server web 38 00:01:43,940 --> 00:01:48,210 per essere la directory pubblica, che viene con il problema di impostare sei codice distribuzione. 39 00:01:48,210 --> 00:01:50,620 Quando mi ha colpito Invio, vedrete in giallo qui, un promemoria 40 00:01:50,620 --> 00:01:52,260 da quale cartella realtà sto usando. 41 00:01:52,260 --> 00:01:55,870 In questo caso, si tratta di una lunga serie, "workspace pset6 pubblico a casa ubuntu". 42 00:01:55,870 --> 00:01:57,500 E l'ultima parola è ciò che è fondamentale. 43 00:01:57,500 --> 00:02:01,180 E poi, infine, a quanto pare, il mio Server è ora in ascolto sulla porta 8080. 44 00:02:01,180 --> 00:02:05,860 >> Quello che sto accanto intenzione di fare è ricordare che in ID CS50 nell'angolo in alto a destra 45 00:02:05,860 --> 00:02:09,440 dello schermo, si sta andando a vedere un URL che è ide50-username.cs50.io. 46 00:02:09,440 --> 00:02:12,860 47 00:02:12,860 --> 00:02:15,080 E in effetti, se si fa clic che, ti verrà portata via 48 00:02:15,080 --> 00:02:17,090 a un'altra scheda del browser, che, in questo caso, 49 00:02:17,090 --> 00:02:20,830 sta per farmi vedere il contenuto dei miei server web radici. 50 00:02:20,830 --> 00:02:24,770 In altre parole, i file che si vede qui, gatto puntino HTML, gatto puntino JPEG, favicon puntino 51 00:02:24,770 --> 00:02:27,690 ico, ciao puntino HTML, ciao puntino php, e prova, 52 00:02:27,690 --> 00:02:29,800 sono tutti dello stesso contenuti che sarebbero visualizzati 53 00:02:29,800 --> 00:02:32,560 con LS all'interno della mia directory pubblica. 54 00:02:32,560 --> 00:02:36,790 E ciò che è bello è che se vado avanti e fare clic ora sul gatto puntino HTML, 55 00:02:36,790 --> 00:02:38,710 Vedo gatto puntino HTML. 56 00:02:38,710 --> 00:02:42,660 E se clicco su gatto dot JPEG, o ciao puntino HTML, 57 00:02:42,660 --> 00:02:46,650 o anche digitare il mio nome David, e poi cliccare su "dire ciao," 58 00:02:46,650 --> 00:02:49,420 vedrete che tutti i file funzionano perché il personale 59 00:02:49,420 --> 00:02:52,820 soluzione, naturalmente, installato in CS50 ID è completamente funzionale. 60 00:02:52,820 --> 00:02:57,090 Così funziona esattamente come il tuo soluzione definitiva dovrebbe funzionare. 61 00:02:57,090 --> 00:03:00,990 >> Nel frattempo, se torniamo a mio terminale finestra in cui ho eseguito il comando del server, 62 00:03:00,990 --> 00:03:03,410 notare ciò che la console è stato detto. 63 00:03:03,410 --> 00:03:07,890 Vedo qui che la prima richiesta che Ho ricevuto era letteralmente ottenere barra gatto 64 00:03:07,890 --> 00:03:10,260 dot HTML, HTTP versione 1.1. 65 00:03:10,260 --> 00:03:12,600 E poi, a che cosa verde la soluzione personale ha fatto 66 00:03:12,600 --> 00:03:14,580 è vero me la sta mostrando prima linea di uscita 67 00:03:14,580 --> 00:03:16,340 che il server web sta rispondendo con. 68 00:03:16,340 --> 00:03:18,300 In altre parole, ci siamo già scritto il codice 69 00:03:18,300 --> 00:03:21,530 che si apre quella busta virtuale, contenente tale richiesta GET. 70 00:03:21,530 --> 00:03:23,980 E poi noi rispondiamo alla utente ma, contemporaneamente, 71 00:03:23,980 --> 00:03:28,780 stampare la schermata di uscita qui HTTP 1.1, 200 OK 72 00:03:28,780 --> 00:03:31,900 per confermare quello che stiamo mettendo in la busta di ritorno, per così dire, 73 00:03:31,900 --> 00:03:33,540 che stiamo rimandando per l'utente. 74 00:03:33,540 --> 00:03:36,200 >> E così quello che sta succedendo qui è che nella finestra del terminale, 75 00:03:36,200 --> 00:03:38,510 stiamo correndo il web server e, di conseguenza, è 76 00:03:38,510 --> 00:03:42,480 ascolto per HTTP richieste sulla porta TCP 8080. 77 00:03:42,480 --> 00:03:44,960 Nel frattempo, nel mio browser web, come faccio clic attraverso ogni 78 00:03:44,960 --> 00:03:48,480 di questi file, o anche il mio ingresso nome David, e quindi fare clic su Invia, 79 00:03:48,480 --> 00:03:51,827 questo è il mio browser parlando con il server web. 80 00:03:51,827 --> 00:03:54,410 E ciò che stato fatto dal web server, poi, in quella finestra terminale 81 00:03:54,410 --> 00:03:56,370 mi sta mostrando esattamente la prima linea che è 82 00:03:56,370 --> 00:03:58,540 stato ricevuto in un virtuale busta e esattamente 83 00:03:58,540 --> 00:04:02,870 la prima linea che viene risposto con a quel client web.