1 00:00:00,000 --> 00:00:00,160 2 00:00:00,160 --> 00:00:02,660 >> Sprecher 1: Okay, lassen Sie uns einen schauen, wie das Personal-Lösung tatsächlich 3 00:00:02,660 --> 00:00:04,760 tätig ist, so dass Sie ein Gefühl, zuerst aus 4 00:00:04,760 --> 00:00:06,930 , wie der Web-Server angenommen hat zu laufen, und wie Sie tatsächlich 5 00:00:06,930 --> 00:00:08,480 bekommen es auf dem eigenen Rechner läuft. 6 00:00:08,480 --> 00:00:09,350 So vorstellen hier. 7 00:00:09,350 --> 00:00:13,640 Ich habe schon in CS50-ID installiert pset6 dot zip, pro Spezifikation. 8 00:00:13,640 --> 00:00:16,197 Ich habe es entpackt, und ich habe In meine pset6 Verzeichnis CDED. 9 00:00:16,197 --> 00:00:18,780 Eines der ersten Dinge, die Sie sind tun zu wollen, vor allem 10 00:00:18,780 --> 00:00:22,010 wenn Sie schon mit einem CS50 IDE zu spielen zusammen mit den letzten Vorträgen, wobei 11 00:00:22,010 --> 00:00:25,640 Wir waren mit PHP in CS50 IDE, und zwar 12 00:00:25,640 --> 00:00:29,050 mit diesem Web-Server Apache genannt, wobei Sie starten und stoppen 13 00:00:29,050 --> 00:00:30,910 mit dem Befehl, Apache 50. 14 00:00:30,910 --> 00:00:34,160 Zuerst gehen Sie vor und Typ "Apache 50 Haltestelle" 15 00:00:34,160 --> 00:00:37,370 nur sicherstellen, dass, wenn Sie wurden Folgende zusammen in den letzten Tagen, 16 00:00:37,370 --> 00:00:40,090 und Sie schaltet Apache, du bist Ausschalten auf diese Weise 17 00:00:40,090 --> 00:00:41,360 durch Stoppen des Servers. 18 00:00:41,360 --> 00:00:44,110 Nun, was ich tun werde, ist genau das, was die spec sagt mir zu tun. 19 00:00:44,110 --> 00:00:49,770 Ich werde um Tilda CS50 Strich gehen pset6 Schrägstrich-Server, und drücken Sie Enter. 20 00:00:49,770 --> 00:00:52,840 Sie werden bemerken, dass ich mich angeschrien mit einigen Verwendungsinformationen, wobei 21 00:00:52,840 --> 00:00:54,960 Ich laufen soll das Programm als Server 22 00:00:54,960 --> 00:00:58,230 optional mit einem Bindestrich p und dann eine Portnummer, die Sie tatsächlich 23 00:00:58,230 --> 00:01:00,720 leer lassen, da durch Standardmäßig pro die Spezifikation, 24 00:01:00,720 --> 00:01:04,010 der Web-Server zu gehen vorausgesetzt, dass Sie Port 8080 möchten. 25 00:01:04,010 --> 00:01:07,560 In der Zwischenzeit können Sie sich erinnern, dass Port 8080 ist nicht wirklich Standard, 26 00:01:07,560 --> 00:01:09,380 vielmehr Port 80 der Zahl, die wir gesprochen haben 27 00:01:09,380 --> 00:01:11,440 darum, der Standard für HTTP. 28 00:01:11,440 --> 00:01:14,870 Nun stellt sich heraus, dass CS50 IDE wird einfach in einer Weise konfiguriert ist, 29 00:01:14,870 --> 00:01:18,730 so dass, wenn Sie mit einem Browser probieren Port 80 von der Außenwelt zu besuchen, 30 00:01:18,730 --> 00:01:22,210 es wird auf magische Art Port-Weiterleitung, oder leiten Sie selbst, 31 00:01:22,210 --> 00:01:25,200 um Port 8080 im Inneren Ihre Server selbst. 32 00:01:25,200 --> 00:01:29,330 >> Also das letzte, was hier ist der Befehl Zeilenargument, der Weg zur Route. 33 00:01:29,330 --> 00:01:31,590 Und damit meine ich nur meine, was ich tun Ordner 34 00:01:31,590 --> 00:01:34,820 wollen, um den Server zu sagen zu verwenden, um Dateien zu dienen? 35 00:01:34,820 --> 00:01:39,030 In anderen Worten, wenn der Benutzer besucht Slash, was soll er oder sie sehen? 36 00:01:39,030 --> 00:01:41,030 Nun, lasst uns weitermachen und genau das wieder zu laufen, 37 00:01:41,030 --> 00:01:43,940 dieses Mal die Angabe, dass ich wollen, dass die Wurzel meiner Web-Server 38 00:01:43,940 --> 00:01:48,210 um die Öffentlichkeit Verzeichnis sein, das kommt mit Problem stellte sechs Verteilungscode. 39 00:01:48,210 --> 00:01:50,620 Wenn ich drücken Sie die Eingabetaste, sehen Sie, in gelb hier, Erinnerung 40 00:01:50,620 --> 00:01:52,260 darüber, welche Ordner bin ich eigentlich mit. 41 00:01:52,260 --> 00:01:55,870 In diesem Fall ist es ein langer String, "home ubuntu Arbeitsplatz pset6 Öffentlichkeit." 42 00:01:55,870 --> 00:01:57,500 Und das letzte Wort ist, was Taste. 43 00:01:57,500 --> 00:02:01,180 Und dann schließlich, offenbar, meine Server ist jetzt auf Port 8080. 44 00:02:01,180 --> 00:02:05,860 >> Was ich nächstes zu tun ist, daran erinnern, dass in CS50-ID in der oberen rechten Ecke 45 00:02:05,860 --> 00:02:09,440 des Bildschirms, Sie gehen, um zu sehen eine URL, die ide50-username.cs50.io ist. 46 00:02:09,440 --> 00:02:12,860 47 00:02:12,860 --> 00:02:15,080 Und in der Tat, wenn Sie klicken dass, werden Sie sich entführen 48 00:02:15,080 --> 00:02:17,090 zu einem anderen Browser-Tab, dass in diesem Fall 49 00:02:17,090 --> 00:02:20,830 wird mir den Inhalt zu zeigen, meiner Web-Server Wurzeln. 50 00:02:20,830 --> 00:02:24,770 Mit anderen Worten, die Dateien, die Sie hier sehen, cat dot HTML, Katze dot JPEG, Favicon dot 51 00:02:24,770 --> 00:02:27,690 ico, hallo dot HTML, hallo dot PHP, und testen, 52 00:02:27,690 --> 00:02:29,800 sind alle von der gleichen Inhalte, die Sie sehen würden, 53 00:02:29,800 --> 00:02:32,560 mit LS Innenseite meiner öffentlichen Verzeichnis. 54 00:02:32,560 --> 00:02:36,790 Und was schön ist, dass, wenn ich vor und klicken Sie nun auf Katze dot HTML, 55 00:02:36,790 --> 00:02:38,710 Ich sehe cat dot HTML. 56 00:02:38,710 --> 00:02:42,660 Und wenn ich auf Katze dot klicken JPEG oder hallo dot HTML, 57 00:02:42,660 --> 00:02:46,650 oder sogar in meinem Namen geben David, und klicken Sie dann auf "Hallo sagen" 58 00:02:46,650 --> 00:02:49,420 Du, dass alle sehen Dateien zu arbeiten, weil das Personal 59 00:02:49,420 --> 00:02:52,820 Lösung natürlich installiert in CS50 ID ist voll funktionsfähig. 60 00:02:52,820 --> 00:02:57,090 So funktioniert es genau so, wie Sie Ihre eigenen Lösung sollte letztendlich zu arbeiten. 61 00:02:57,090 --> 00:03:00,990 >> In der Zwischenzeit, wenn wir wieder zu meiner Klemme Fenster, in dem ich lief den Befehl Server, 62 00:03:00,990 --> 00:03:03,410 bemerken, was die Konsole gesagt hat. 63 00:03:03,410 --> 00:03:07,890 Ich sehe hier, dass die erste Anforderung, die Ich habe buchstäblich bekommen Strich Katze 64 00:03:07,890 --> 00:03:10,260 dot HTML, HTTP-Version 1.1. 65 00:03:10,260 --> 00:03:12,600 Und dann, in grün, was das Personal Lösung getan hat 66 00:03:12,600 --> 00:03:14,580 ist es mir das zeigen erste Zeile der Ausgabe 67 00:03:14,580 --> 00:03:16,340 , dass der Web-Server mit reagiert. 68 00:03:16,340 --> 00:03:18,300 Mit anderen Worten, wir haben den Code bereits geschrieben 69 00:03:18,300 --> 00:03:21,530 Das eröffnet, dass virtuelle Umschlag, enthält das zu bekommen Anfrage. 70 00:03:21,530 --> 00:03:23,980 Und dann auf die wir reagieren Benutzer, gleichzeitig jedoch 71 00:03:23,980 --> 00:03:28,780 Aufträge an den Ausgabebildschirm Hier HTTP 1.1, 200 OK 72 00:03:28,780 --> 00:03:31,900 , um zu bestätigen, was wir bei der Umsetzung der Rückumschlag, sozusagen 73 00:03:31,900 --> 00:03:33,540 dass wir uns zurück an den Benutzer sendet. 74 00:03:33,540 --> 00:03:36,200 >> Und was ist denn hier los ist dass in dem Terminal-Fenster, 75 00:03:36,200 --> 00:03:38,510 wir laufen im Web Server, und daher ist es 76 00:03:38,510 --> 00:03:42,480 Hören für HTTP Anträge auf TCP-Port 8080. 77 00:03:42,480 --> 00:03:44,960 Währenddessen sind in meinem Web-Browser, als ich durch jeden Klick 78 00:03:44,960 --> 00:03:48,480 jener Dateien oder sogar Eingangs meiner Name David, und klicken Sie dann auf Senden, 79 00:03:48,480 --> 00:03:51,827 das ist mein Browser im Gespräch mit dem Web-Server. 80 00:03:51,827 --> 00:03:54,410 Und was Tun des Webservers, dann in diesem Terminalfenster 81 00:03:54,410 --> 00:03:56,370 ist genau das zeigt mir, die erste Zeile, die ist 82 00:03:56,370 --> 00:03:58,540 in einem virtuellen eingegangen Umschlag und genau 83 00:03:58,540 --> 00:04:02,870 die erste Zeile, die ist reagierte mit zu dieser Web-Client.