1 00:00:00,000 --> 00:00:00,160 2 00:00:00,160 --> 00:00:02,660 >> Spreker 1: Alle reg, laat ons 'n kyk na hoe die personeel oplossing eintlik 3 00:00:02,660 --> 00:00:04,760 bedryf, sodat jy kry 'n gevoel, eerste af 4 00:00:04,760 --> 00:00:06,930 hoe die web bediener veronderstel om te hardloop, en hoe jy kan eintlik 5 00:00:06,930 --> 00:00:08,480 kry dit op jou eie rekenaar. 6 00:00:08,480 --> 00:00:09,350 So Picture It hier. 7 00:00:09,350 --> 00:00:13,640 Ek het reeds in CS50 ID geïnstalleer pset6 dot zip, per die spesifikasie. 8 00:00:13,640 --> 00:00:16,197 Ek het oopgemaak, en ek het CDed in my pset6 gids. 9 00:00:16,197 --> 00:00:18,780 Een van die eerste dinge wat jy gaan wil doen, veral 10 00:00:18,780 --> 00:00:22,010 as jy het al met behulp van 'CS50 IDE te speel saam met die onlangse lesings, waarin 11 00:00:22,010 --> 00:00:25,640 ons het al met behulp van PHP in CS50 IDE, spesifiek, 12 00:00:25,640 --> 00:00:29,050 die gebruik van daardie web server genoem Apache, waardeur jy kan begin en stop dit 13 00:00:29,050 --> 00:00:30,910 met daardie bevel, Apache 50. 14 00:00:30,910 --> 00:00:34,160 Eerstens, gaan voort en tik "Apache 50 stop" 15 00:00:34,160 --> 00:00:37,370 net om seker te maak dat as jy volgende saam in die afgelope dae, 16 00:00:37,370 --> 00:00:40,090 en jy het op Apache, jy is draai dit af op hierdie manier 17 00:00:40,090 --> 00:00:41,360 deur die stop van die bediener. 18 00:00:41,360 --> 00:00:44,110 Nou, wat ek gaan doen, is om presies wat die spec vertel my om te doen. 19 00:00:44,110 --> 00:00:49,770 Ek gaan om te gaan na Tilda CS50 slash pset6 slash bediener, en net druk Enter. 20 00:00:49,770 --> 00:00:52,840 Jy sal sien dat ek geskree met 'n paar inligting oor die gebruik, waardeur 21 00:00:52,840 --> 00:00:54,960 Ek moet loop die program as bediener 22 00:00:54,960 --> 00:00:58,230 met 'n opsionele Dash p en dan 'n poort nommer wat jy kan eintlik 23 00:00:58,230 --> 00:01:00,720 verlaat leeg want deur verstek per die spec, 24 00:01:00,720 --> 00:01:04,010 die web bediener gaan aanvaar dat jy wil hawe 8080. 25 00:01:04,010 --> 00:01:07,560 Intussen, kan jy onthou dat hawe 8080 is nie regtig standaard, 26 00:01:07,560 --> 00:01:09,380 eerder poort 80 is die getal wat ons het gepraat 27 00:01:09,380 --> 00:01:11,440 oor die feit dat die verstek vir HTTP. 28 00:01:11,440 --> 00:01:14,870 Wel, blyk dat CS50 IDE eenvoudig ingestel op 'n manier, 29 00:01:14,870 --> 00:01:18,730 so dat wanneer jy met 'n leser probeer na die hawe 80 besoek uit die buite wêreld, 30 00:01:18,730 --> 00:01:22,210 dit gaan mettertyd soort hawe vorentoe, of lei self, 31 00:01:22,210 --> 00:01:25,200 na die hawe 8080 binnekant van jou bediener self. 32 00:01:25,200 --> 00:01:29,330 >> So is die laaste ding hier is die opdrag line argument, die pad na die roete. 33 00:01:29,330 --> 00:01:31,590 En dat ek net bedoel, wat gids ek 34 00:01:31,590 --> 00:01:34,820 wil die bediener vertel om te gebruik om te dien op lêers? 35 00:01:34,820 --> 00:01:39,030 Met ander woorde, as die gebruiker besoeke streep, wat moet hy of sy sien? 36 00:01:39,030 --> 00:01:41,030 Wel, laat ons gaan voort en hardloop presies dit weer 37 00:01:41,030 --> 00:01:43,940 hierdie tyd spesifiseer dat ek wil hê dat die wortel van my web bediener 38 00:01:43,940 --> 00:01:48,210 aan die publiek gids wees, wat kom met die probleem sit ses verspreiding kode. 39 00:01:48,210 --> 00:01:50,620 Toe ek druk Enter, sal jy sien in geel hier, 'n herinnering 40 00:01:50,620 --> 00:01:52,260 as wat ek eintlik gids gebruik nie. 41 00:01:52,260 --> 00:01:55,870 In hierdie geval, dit is 'n lang tou, "home ubuntu werkspasie pset6 publiek." 42 00:01:55,870 --> 00:01:57,500 En dat dit die laaste woord is wat is die sleutel. 43 00:01:57,500 --> 00:02:01,180 En dan laastens, glo, my bediener is nou luister op poort 8080. 44 00:02:01,180 --> 00:02:05,860 >> Wat ek volgende gaan doen, is onthou dat in CS50 ID in die boonste regterkantste hoek 45 00:02:05,860 --> 00:02:09,440 van jou skerm, jy gaan om te sien 'n URL wat is ide50-username.cs50.io. 46 00:02:09,440 --> 00:02:12,860 47 00:02:12,860 --> 00:02:15,080 En inderdaad, as jy klik dat, sal jy weg wees geklits 48 00:02:15,080 --> 00:02:17,090 na 'n ander blad leser, dat, in hierdie geval, 49 00:02:17,090 --> 00:02:20,830 gaan my die inhoud te wys van my web bedieners wortels. 50 00:02:20,830 --> 00:02:24,770 Met ander woorde, die lêers wat jy hier sien, kat dot HTML, kat dot JPEG, favicon dot 51 00:02:24,770 --> 00:02:27,690 ico, hello dot HTML, hallo dot php, en toets 52 00:02:27,690 --> 00:02:29,800 is almal van dieselfde inhoud wat jy wil sien 53 00:02:29,800 --> 00:02:32,560 met LS binnekant van my openbare gids. 54 00:02:32,560 --> 00:02:36,790 En wat is lekker is dat as ek gaan voort en klik nou op die kat dot HTML, 55 00:02:36,790 --> 00:02:38,710 Ek sien kat dot HTML. 56 00:02:38,710 --> 00:02:42,660 En as ek op die kat dot JPEG, of hallo dot HTML, 57 00:02:42,660 --> 00:02:46,650 of selfs tik in my naam Dawid en kliek "sê hello," 58 00:02:46,650 --> 00:02:49,420 sal jy sien dat al die lêers te werk omdat die personeel 59 00:02:49,420 --> 00:02:52,820 oplossing, natuurlik, geïnstalleer in CS50 ID is ten volle funksioneel. 60 00:02:52,820 --> 00:02:57,090 So werk dit presies soos jou eie oplossing moet uiteindelik werk. 61 00:02:57,090 --> 00:03:00,990 >> Intussen, as ons gaan terug na my terminale venster, waar ek hardloop die bediener opdrag, 62 00:03:00,990 --> 00:03:03,410 sien wat die konsole is gesê. 63 00:03:03,410 --> 00:03:07,890 Ek sien hier dat die eerste versoek dat Ek het letterlik kry slash kat 64 00:03:07,890 --> 00:03:10,260 dot HTML, HTTP weergawe 1.1. 65 00:03:10,260 --> 00:03:12,600 En dan, in die groen wat die personeel oplossing gedoen 66 00:03:12,600 --> 00:03:14,580 is dit my die eerste reël van uitset 67 00:03:14,580 --> 00:03:16,340 dat die web bediener reageer met. 68 00:03:16,340 --> 00:03:18,300 Met ander woorde, ons het reeds die kode geskryf 69 00:03:18,300 --> 00:03:21,530 wat oopmaak dat virtuele koevert, bevat wat kry versoek. 70 00:03:21,530 --> 00:03:23,980 En dan reageer ons die gebruiker, maar terselfdertyd, 71 00:03:23,980 --> 00:03:28,780 druk op die skerm uitset hier HTTP 1.1, 200 OK 72 00:03:28,780 --> 00:03:31,900 om te bevestig wat ons is om in die terugkeer koevert, so te sê, 73 00:03:31,900 --> 00:03:33,540 dat ons terug stuur aan die gebruiker. 74 00:03:33,540 --> 00:03:36,200 >> En so wat gaan aan hier wat in die terminale venster, 75 00:03:36,200 --> 00:03:38,510 ons hardloop die web bediener, en daarom is dit 76 00:03:38,510 --> 00:03:42,480 luister vir HTTP versoeke op TCP-poort 8080. 77 00:03:42,480 --> 00:03:44,960 Intussen, in my webblaaier, as ek op deur elke 78 00:03:44,960 --> 00:03:48,480 van die lêers, of selfs insette my noem Dawid, en dan klik, 79 00:03:48,480 --> 00:03:51,827 dit is my browser praat met die web-bediener. 80 00:03:51,827 --> 00:03:54,410 En wat het van die web bediener se dan, in daardie terminale venster 81 00:03:54,410 --> 00:03:56,370 wys presies my die eerste lyn wat 82 00:03:56,370 --> 00:03:58,540 in 'n virtuele ontvang koevert en presies 83 00:03:58,540 --> 00:04:02,870 die eerste lyn wat die wese gereageer met daardie web kliënt.