СПІКЕР 1: Добра, давайце паглядзець, як на самой справе рашэнне персаналу працуе, так што вы атрымаць уяўленне, па-першае як мяркуецца вэб-сервер бегчы, і як вы можаце фактычна атрымаць гэта працуе на Вашым кампутары. Так карціна яго тут. Я ўжо усталяваны ў CS50 ID pset6 кропка ZIP, у адпаведнасці са спецыфікацыяй. Я расшпіліў яе, і я CDED ў маім каталогу pset6. Адным з першых рэчаў, якія вы захоча зрабіць, асабліва калі вы былі з дапамогай CS50 IDE гуляць нароўні з нядаўніх лекцый, у якім мы выкарыстоўвалі PHP ў CS50 IDE, у прыватнасці, з дапамогай гэтага вэб-сервер Apache пад назвай, у якім вы можаце запускаць і спыняць яго з гэтай камандай, Apache 50. Па-першае, ісці наперад і тыпу "Апач" 50 прыпынак проста каб пераканацца, што калі вы былі наступных разам у апошнія дні, і вы ўключаная Apache, вы выключэння такім чынам спыніўшы сервер. Цяпер, што я збіраюся зрабіць, гэта дакладна тое, што спецыфікацыя кажа мне рабіць. Я збіраюся паехаць у Тыльда CS50 слэш pset6 сервер слэш, і проста націсніце Enter. Вы заўважыце, што я крычаў на з некаторай інфармацыяй аб выкарыстанні, у выніку чаго Я павінен быць запушчаны праграма як сервер з дадатковым працяжнік р, а затым нумар порта, які вы можаце на самой справе пакіньце поле пустым таму што па змаўчанні, у адпаведнасці з спецыфікацыяй, вэб-сервер будзе Выкажам здагадку, што вы хочаце порт 8080. Між тым, вы, магчыма, памятаеце, што порт 8080 на самай справе не стандарт, а порт 80 з'яўляецца Колькасць мы гаварылі пра тое, па змаўчанні для пратаколу HTTP. Ну, аказваецца, што CS50 IDE проста напісаў у шляху, такім чынам, што, калі вы з дапамогай браўзэра паспрабаваць наведаць порт 80 ад знешняга свету, гэта будзе сартаваць чароўным порт наперад або перанакіраваць сябе, да порта 8080 ўнутры самай серверы. Такім чынам, апошняя рэч тут з'яўляецца каманда Аргумент радок, шлях да маршруту. І што я толькі маю на ўвазе, у якой тэчцы я зрабіць хачу распавесці сервера выкарыстоўваць, каб служыць файлаў? Іншымі словамі, калі карыстальнік наведвае слэш, што ён ці яна павінны бачыць? Ну, давайце ісці наперад і запусціць менавіта гэта зноў, на гэты раз паказаўшы, што я хачу корань маёй вэб-сервера каб быць публічным каталог, які прыходзіць з праблемай ўсталяваць шэсць код размеркавання. Калі я трапіў Enter, вы ўбачыце у жоўтым тут, напамін каб нейкую тэчку я на самой справе з дапамогай. У гэтым выпадку, гэта доўгая радок, "дадому Ubuntu працоўнае pset6 грамадскасці." І апошняе слова, што з'яўляецца ключавым. І тады, нарэшце, па-відаць, мой Сервер зараз слухаць на порце 8080. Тое, што я побач збіраюся зрабіць, гэта нагадаем, што у CS50 ID ў верхнім правым куце вашага экрана, вы ўбачыце, URL-адрас, які ide50-username.cs50.io. І на самай справе, калі вы націснеце што вы будзеце павезлі ў іншы ўкладцы браўзэра, што, у дадзеным выпадку, збіраецца паказаць мне змесціва з маіх вэб-сервераў каранёў. Іншымі словамі, файлы, якія вы тут бачыце, котка кропка HTML, котка кропка JPEG, Favicon кропка ICO, прывітанне кропка HTML, прывітанне кропка PHP, і тэст, усё таго ж Змест, што вы бачылі б з LS ўнутры маёй грамадскай дырэкторыі. І, што прыемна, што, калі я іду наперад і націсніце Цяпер кошкі кропка HTML, Я бачу ката кропка HTML. І калі я націскаю на ката кропка JPEG, або прывітанне кропка HTML, ці нават ўвесці маё імя Давіда, а затым націсніце кнопку "павітацца", Вы ўбачыце, што ўсё з файлы праца, таму што персанал Рашэнне, вядома, устаноўлены у CS50 ID з'яўляецца цалкам функцыянальнай. Так працуе сапраўды, як свае ўласныя Рашэнне павінна ў канчатковым рахунку працаваць. Між тым, калі мы вернемся да маёй тэрмінала акно, у якім я выканаў каманду сервера, заўважыць, што кансоль была кажу. Я бачу, што тут першы запыт, што Я атрымаў літаральна атрымаць слэш котку кропка HTML, HTTP версіі 1.1. А потым, у зялёны, што рашэнне Персанал зрабіў гэта паказвае мне Першы радок вываду што вэб-сервер адказвае з. Іншымі словамі, мы ужо напісаў код што адкрывае, што віртуальны канверт, які змяшчае гэтую просьбу атрымаць. І тады мы адказваем на Карыстальнік але, адначасова, друк на экране вываду тут HTTP 1.1, 200 ОК каб пацвердзіць, што мы ўкладваем у вяртанне канверт, так бы мовіць, што мы пасылаем назад карыстальніку. І так, што адбываецца тут на што ў акне тэрмінала, мы бяжым у Інтэрнэце Сервер, і, такім чынам, гэта прыслухоўваючыся да HTTP- запыты на TCP порт 8080. Між тым, у маім браўзэры, як я націсніце праз кожны з гэтых файлаў, або нават уваход мая назваць Давіда, а затым націсніце кнопку Адправіць, што мой браўзэр гаварыць на вэб-серверы. І тое, што робіць тое вэб-сервера, Затым, у гэтым акне тэрмінала паказвае мне дакладна першая лінія, што гэта быў атрыманы ў віртуальнай канверт і дакладна першая лінія, гэты час адказаў на гэтую вэб-кліента.