1 00:00:00,000 --> 00:00:00,160 2 00:00:00,160 --> 00:00:02,660 >> СПІКЕР 1: Добра, давайце паглядзець, як на самой справе рашэнне персаналу 3 00:00:02,660 --> 00:00:04,760 працуе, так што вы атрымаць уяўленне, па-першае 4 00:00:04,760 --> 00:00:06,930 як мяркуецца вэб-сервер бегчы, і як вы можаце фактычна 5 00:00:06,930 --> 00:00:08,480 атрымаць гэта працуе на Вашым кампутары. 6 00:00:08,480 --> 00:00:09,350 Так карціна яго тут. 7 00:00:09,350 --> 00:00:13,640 Я ўжо усталяваны ў CS50 ID pset6 кропка ZIP, у адпаведнасці са спецыфікацыяй. 8 00:00:13,640 --> 00:00:16,197 Я расшпіліў яе, і я CDED ў маім каталогу pset6. 9 00:00:16,197 --> 00:00:18,780 Адным з першых рэчаў, якія вы захоча зрабіць, асабліва 10 00:00:18,780 --> 00:00:22,010 калі вы былі з дапамогай CS50 IDE гуляць нароўні з нядаўніх лекцый, у якім 11 00:00:22,010 --> 00:00:25,640 мы выкарыстоўвалі PHP ў CS50 IDE, у прыватнасці, 12 00:00:25,640 --> 00:00:29,050 з дапамогай гэтага вэб-сервер Apache пад назвай, у якім вы можаце запускаць і спыняць яго 13 00:00:29,050 --> 00:00:30,910 з гэтай камандай, Apache 50. 14 00:00:30,910 --> 00:00:34,160 Па-першае, ісці наперад і тыпу "Апач" 50 прыпынак 15 00:00:34,160 --> 00:00:37,370 проста каб пераканацца, што калі вы былі наступных разам у апошнія дні, 16 00:00:37,370 --> 00:00:40,090 і вы ўключаная Apache, вы выключэння такім чынам 17 00:00:40,090 --> 00:00:41,360 спыніўшы сервер. 18 00:00:41,360 --> 00:00:44,110 Цяпер, што я збіраюся зрабіць, гэта дакладна тое, што спецыфікацыя кажа мне рабіць. 19 00:00:44,110 --> 00:00:49,770 Я збіраюся паехаць у Тыльда CS50 слэш pset6 сервер слэш, і проста націсніце Enter. 20 00:00:49,770 --> 00:00:52,840 Вы заўважыце, што я крычаў на з некаторай інфармацыяй аб выкарыстанні, у выніку чаго 21 00:00:52,840 --> 00:00:54,960 Я павінен быць запушчаны праграма як сервер 22 00:00:54,960 --> 00:00:58,230 з дадатковым працяжнік р, а затым нумар порта, які вы можаце на самой справе 23 00:00:58,230 --> 00:01:00,720 пакіньце поле пустым таму што па змаўчанні, у адпаведнасці з спецыфікацыяй, 24 00:01:00,720 --> 00:01:04,010 вэб-сервер будзе Выкажам здагадку, што вы хочаце порт 8080. 25 00:01:04,010 --> 00:01:07,560 Між тым, вы, магчыма, памятаеце, што порт 8080 на самай справе не стандарт, 26 00:01:07,560 --> 00:01:09,380 а порт 80 з'яўляецца Колькасць мы гаварылі 27 00:01:09,380 --> 00:01:11,440 пра тое, па змаўчанні для пратаколу HTTP. 28 00:01:11,440 --> 00:01:14,870 Ну, аказваецца, што CS50 IDE проста напісаў у шляху, 29 00:01:14,870 --> 00:01:18,730 такім чынам, што, калі вы з дапамогай браўзэра паспрабаваць наведаць порт 80 ад знешняга свету, 30 00:01:18,730 --> 00:01:22,210 гэта будзе сартаваць чароўным порт наперад або перанакіраваць сябе, 31 00:01:22,210 --> 00:01:25,200 да порта 8080 ўнутры самай серверы. 32 00:01:25,200 --> 00:01:29,330 >> Такім чынам, апошняя рэч тут з'яўляецца каманда Аргумент радок, шлях да маршруту. 33 00:01:29,330 --> 00:01:31,590 І што я толькі маю на ўвазе, у якой тэчцы я зрабіць 34 00:01:31,590 --> 00:01:34,820 хачу распавесці сервера выкарыстоўваць, каб служыць файлаў? 35 00:01:34,820 --> 00:01:39,030 Іншымі словамі, калі карыстальнік наведвае слэш, што ён ці яна павінны бачыць? 36 00:01:39,030 --> 00:01:41,030 Ну, давайце ісці наперад і запусціць менавіта гэта зноў, 37 00:01:41,030 --> 00:01:43,940 на гэты раз паказаўшы, што я хачу корань маёй вэб-сервера 38 00:01:43,940 --> 00:01:48,210 каб быць публічным каталог, які прыходзіць з праблемай ўсталяваць шэсць код размеркавання. 39 00:01:48,210 --> 00:01:50,620 Калі я трапіў Enter, вы ўбачыце у жоўтым тут, напамін 40 00:01:50,620 --> 00:01:52,260 каб нейкую тэчку я на самой справе з дапамогай. 41 00:01:52,260 --> 00:01:55,870 У гэтым выпадку, гэта доўгая радок, "дадому Ubuntu працоўнае pset6 грамадскасці." 42 00:01:55,870 --> 00:01:57,500 І апошняе слова, што з'яўляецца ключавым. 43 00:01:57,500 --> 00:02:01,180 І тады, нарэшце, па-відаць, мой Сервер зараз слухаць на порце 8080. 44 00:02:01,180 --> 00:02:05,860 >> Тое, што я побач збіраюся зрабіць, гэта нагадаем, што у CS50 ID ў верхнім правым куце 45 00:02:05,860 --> 00:02:09,440 вашага экрана, вы ўбачыце, URL-адрас, які ide50-username.cs50.io. 46 00:02:09,440 --> 00:02:12,860 47 00:02:12,860 --> 00:02:15,080 І на самай справе, калі вы націснеце што вы будзеце павезлі 48 00:02:15,080 --> 00:02:17,090 ў іншы ўкладцы браўзэра, што, у дадзеным выпадку, 49 00:02:17,090 --> 00:02:20,830 збіраецца паказаць мне змесціва з маіх вэб-сервераў каранёў. 50 00:02:20,830 --> 00:02:24,770 Іншымі словамі, файлы, якія вы тут бачыце, котка кропка HTML, котка кропка JPEG, Favicon кропка 51 00:02:24,770 --> 00:02:27,690 ICO, прывітанне кропка HTML, прывітанне кропка PHP, і тэст, 52 00:02:27,690 --> 00:02:29,800 усё таго ж Змест, што вы бачылі б 53 00:02:29,800 --> 00:02:32,560 з LS ўнутры маёй грамадскай дырэкторыі. 54 00:02:32,560 --> 00:02:36,790 І, што прыемна, што, калі я іду наперад і націсніце Цяпер кошкі кропка HTML, 55 00:02:36,790 --> 00:02:38,710 Я бачу ката кропка HTML. 56 00:02:38,710 --> 00:02:42,660 І калі я націскаю на ката кропка JPEG, або прывітанне кропка HTML, 57 00:02:42,660 --> 00:02:46,650 ці нават ўвесці маё імя Давіда, а затым націсніце кнопку "павітацца", 58 00:02:46,650 --> 00:02:49,420 Вы ўбачыце, што ўсё з файлы праца, таму што персанал 59 00:02:49,420 --> 00:02:52,820 Рашэнне, вядома, устаноўлены у CS50 ID з'яўляецца цалкам функцыянальнай. 60 00:02:52,820 --> 00:02:57,090 Так працуе сапраўды, як свае ўласныя Рашэнне павінна ў канчатковым рахунку працаваць. 61 00:02:57,090 --> 00:03:00,990 >> Між тым, калі мы вернемся да маёй тэрмінала акно, у якім я выканаў каманду сервера, 62 00:03:00,990 --> 00:03:03,410 заўважыць, што кансоль была кажу. 63 00:03:03,410 --> 00:03:07,890 Я бачу, што тут першы запыт, што Я атрымаў літаральна атрымаць слэш котку 64 00:03:07,890 --> 00:03:10,260 кропка HTML, HTTP версіі 1.1. 65 00:03:10,260 --> 00:03:12,600 А потым, у зялёны, што рашэнне Персанал зрабіў 66 00:03:12,600 --> 00:03:14,580 гэта паказвае мне Першы радок вываду 67 00:03:14,580 --> 00:03:16,340 што вэб-сервер адказвае з. 68 00:03:16,340 --> 00:03:18,300 Іншымі словамі, мы ужо напісаў код 69 00:03:18,300 --> 00:03:21,530 што адкрывае, што віртуальны канверт, які змяшчае гэтую просьбу атрымаць. 70 00:03:21,530 --> 00:03:23,980 І тады мы адказваем на Карыстальнік але, адначасова, 71 00:03:23,980 --> 00:03:28,780 друк на экране вываду тут HTTP 1.1, 200 ОК 72 00:03:28,780 --> 00:03:31,900 каб пацвердзіць, што мы ўкладваем у вяртанне канверт, так бы мовіць, 73 00:03:31,900 --> 00:03:33,540 што мы пасылаем назад карыстальніку. 74 00:03:33,540 --> 00:03:36,200 >> І так, што адбываецца тут на што ў акне тэрмінала, 75 00:03:36,200 --> 00:03:38,510 мы бяжым у Інтэрнэце Сервер, і, такім чынам, гэта 76 00:03:38,510 --> 00:03:42,480 прыслухоўваючыся да HTTP- запыты на TCP порт 8080. 77 00:03:42,480 --> 00:03:44,960 Між тым, у маім браўзэры, як я націсніце праз кожны 78 00:03:44,960 --> 00:03:48,480 з гэтых файлаў, або нават уваход мая назваць Давіда, а затым націсніце кнопку Адправіць, 79 00:03:48,480 --> 00:03:51,827 што мой браўзэр гаварыць на вэб-серверы. 80 00:03:51,827 --> 00:03:54,410 І тое, што робіць тое вэб-сервера, Затым, у гэтым акне тэрмінала 81 00:03:54,410 --> 00:03:56,370 паказвае мне дакладна першая лінія, што гэта 82 00:03:56,370 --> 00:03:58,540 быў атрыманы ў віртуальнай канверт і дакладна 83 00:03:58,540 --> 00:04:02,870 першая лінія, гэты час адказаў на гэтую вэб-кліента.