СПІКЕР 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. Тим часом, в моєму браузері, як я натисніть через кожен з цих файлів, або навіть вхід моя назвати Давида, а потім натисніть кнопку Надіслати, що мій браузер говорити на веб-сервері. І те, що робить те веб-сервера, Потім, в цьому вікні терміналу показує мені точно перша лінія, що це був отриманий у віртуальному конверт і точно перша лінія, це час відповів на цю веб-клієнта.