1 00:00:00,000 --> 00:00:02,620 [Powered by Google Translate] [Седмица 7, Продължава] 2 00:00:02,620 --> 00:00:05,090 [Дейвид Дж. Малан, Харвардски университет] 3 00:00:05,090 --> 00:00:07,780 [Това е CS50. [CS50.TV] 4 00:00:07,780 --> 00:00:09,810 Добре. Welcome Back. Това е CS50, 5 00:00:09,810 --> 00:00:12,100 и това е края на седмица 7. 6 00:00:12,100 --> 00:00:15,460 Така един от тези глупави малки неща, които обикаля интернет 7 00:00:15,460 --> 00:00:24,080 и ние slurped, и сега следва да направи малко шантавите смисъл за вас. 8 00:00:24,080 --> 00:00:28,330 Е, това е смешно с този човек, отколкото е било за вас, момчета. 9 00:00:28,330 --> 00:00:32,619 Говорейки за добре, момчета, 10 00:00:32,619 --> 00:00:42,550 днес е рождения ден на Нейт. 11 00:00:42,550 --> 00:00:46,630 Да ви даде усещане на колко добър Нейт и аз сме 12 00:00:46,630 --> 00:00:50,140 уеб разработки въз основа на клас в понеделник и сега на този, 13 00:00:50,140 --> 00:00:53,170 Мислех, че ще спра на Нейт начална страница, ако не съм го виждал още. 14 00:00:53,170 --> 00:00:57,020 Това тук иа Нейт HTML. 15 00:00:57,020 --> 00:00:59,380 Така че, да види изходния код, ако искате да видите как да направите това, както и Нейт, 16 00:00:59,380 --> 00:01:02,250 ако можем да ви embarass само накратко, персоналът имаш нещо, което 17 00:01:02,250 --> 00:01:06,080 ако искате да споделя някои десерт с някои от децата в класа тук. 18 00:01:06,080 --> 00:01:10,150 Ако искате да хайде надолу. 19 00:01:10,150 --> 00:01:14,350 Всички ръкопляскат и са много хубави, но никой не е седнал някъде близо до Нейт, 20 00:01:14,350 --> 00:01:17,560 по някаква причина, в зоната назад. 21 00:01:17,560 --> 00:01:24,020 Така че може би можете да намерите някои хора, за да се насладите на тези с. 22 00:01:24,020 --> 00:01:33,380 Честит рожден ден, Нейт. 23 00:01:33,380 --> 00:01:37,660 >> Допълнителни 'Здравей!': Ние показахме няколко клипове от нашите CS50x ученици. 24 00:01:37,660 --> 00:01:39,710 Ако искате да видите кой друг е в света 25 00:01:39,710 --> 00:01:41,850 че след заедно, можете да се отправите към този URL 26 00:01:41,850 --> 00:01:45,780 където Йосиф, един от нашите TFS, взети заедно монтаж на видове 27 00:01:45,780 --> 00:01:50,290 на всеки, който е представянето на тези клипове, сред които Рик Астли. 28 00:01:50,290 --> 00:01:53,010 И ако превъртите чрез тях, това е наистина доста вдъхновяващо 29 00:01:53,010 --> 00:01:56,890 за да видите разнообразието на страните и градовете, от които хората са сигнализиране. 30 00:01:56,890 --> 00:02:00,830 Така че, ако искате да погледнете в това, че ще бъде до края на семестъра. 31 00:02:00,830 --> 00:02:05,370 Днес ние продължаваме нашия поглед към уеб, уеб програмиране, HTML и други подобни, 32 00:02:05,370 --> 00:02:08,280 и ние също обяд идва този петък 33 00:02:08,280 --> 00:02:11,360 ако искате, и по-специално, не са го направили преди. 34 00:02:11,360 --> 00:02:13,630 Тема Този петък ще бъде рождения ден на Нейт, 35 00:02:13,630 --> 00:02:15,700 така че ако биха искали да имат обяд рожден ден с Нейт 36 00:02:15,700 --> 00:02:17,500 и други, някои от нашите приятели от индустрията, 37 00:02:17,500 --> 00:02:19,300 моля глава към този адрес там. 38 00:02:19,300 --> 00:02:22,510 Пространство, както винаги, е ограничен. Също така, ако сте забравили, 39 00:02:22,510 --> 00:02:26,460 осъзнават, че следващата седмица е крайният срок за проблем, 4, лов, 40 00:02:26,460 --> 00:02:30,070 , при която след възстановява всички тези JPEG файлове от card.raw, 41 00:02:30,070 --> 00:02:32,880 вас и вашите раздел приятели, ако искате, може да опитайте да снимате 42 00:02:32,880 --> 00:02:36,100 , тъй като много от компютърни специалисти от тази карта с памет е възможно, 43 00:02:36,100 --> 00:02:39,070 и вие и вашата секция ще спечели страхотна награда. 44 00:02:39,070 --> 00:02:44,470 Обърнете се назад към спецификация pset 4 какво да представи и кога. 45 00:02:44,470 --> 00:02:47,650 Също така, ако искате да имате ръкоделие увековечен 46 00:02:47,650 --> 00:02:51,400 на интернет страницата на курса и нейната история на облекло, 47 00:02:51,400 --> 00:02:54,010 знаете, че сте дошли сега, за да започне подаване на проекти 48 00:02:54,010 --> 00:02:57,180 за тази година T-ризи и горнища и други подобни. 49 00:02:57,180 --> 00:02:59,200 Ние ще направим всичко възможно, за да се включат колкото се може повече, колкото можем, 50 00:02:59,200 --> 00:03:01,440 но ние ще трябва някои от членовете на персоналът за преглед на всички проекти 51 00:03:01,440 --> 00:03:04,180 да се уверете, че те са в съответствие със спецификациите, 52 00:03:04,180 --> 00:03:07,500 и след това изберете обикновено една шепа от тях, за да бъдат изложени. 53 00:03:07,500 --> 00:03:10,620 Така че, ако вие сте този тип конструкция, просто знам, че изискванията 54 00:03:10,620 --> 00:03:14,030 за графика са PNG, най-малко 200 DPI, 55 00:03:14,030 --> 00:03:16,520 те не трябва да бъде повече от 4000 x 4000 пиксела, 56 00:03:16,520 --> 00:03:19,010 и не повече от 10 MB, но сте добре дошли да използват неща като 57 00:03:19,010 --> 00:03:22,430 Photoshop или GIMP или различни програми на графични, 58 00:03:22,430 --> 00:03:24,590 онова, което имате на ваше разположение. 59 00:03:24,590 --> 00:03:28,280 >> На хоризонта е окончателния проект. Окончателният проект наистина е кулминацията на 50 г. 60 00:03:28,280 --> 00:03:30,560 като на всички задачи в хода, 61 00:03:30,560 --> 00:03:33,170 наистина това е вашата възможност да направите своя собствена нещо. 62 00:03:33,170 --> 00:03:35,280 И това може да бъде просто да се направи нещо за забавление, 63 00:03:35,280 --> 00:03:38,160 тя може да бъде за решаване на някои належащият проблем, студент група има, 64 00:03:38,160 --> 00:03:40,980 за някой нов уебсайт, някакъв нов механизъм за събиране на данни. 65 00:03:40,980 --> 00:03:43,420 Тя може да бъде мобилно приложение за Android, IOS. 66 00:03:43,420 --> 00:03:46,030 Наистина, небето е граница, и през следващите няколко седмици, 67 00:03:46,030 --> 00:03:50,900 като преход от C до тези на по-високо ниво езици като PHP и JavaScript, 68 00:03:50,900 --> 00:03:55,150 ще откриете себе си все по-запознати с някои реални техники, 69 00:03:55,150 --> 00:03:57,800 някои реални инструменти, както и да допълни, че 70 00:03:57,800 --> 00:04:00,170 знаете, че разбира се, има история на семинари, 71 00:04:00,170 --> 00:04:02,880 , като през следващите няколко седмици, някои от преподавателския състав 72 00:04:02,880 --> 00:04:06,160 и наши приятели от територията на колежа ще предлагат опционални семинари 73 00:04:06,160 --> 00:04:08,540 които излизат над и отвъд това, което обикновено се прави в раздел 74 00:04:08,540 --> 00:04:11,090 да ви запозная с неща като програмиране Android, 75 00:04:11,090 --> 00:04:13,450 да ви запозная с неща като IOS програмиране 76 00:04:13,450 --> 00:04:15,950 или по-напредналите техники за уеб развитие. 77 00:04:15,950 --> 00:04:17,970 Има цяла история от тях вече са онлайн. 78 00:04:17,970 --> 00:04:25,000 Ако отидете на cs50.net/seminars, ние сме били прави това от доста години, 79 00:04:25,000 --> 00:04:28,740 и ще видите, че архивират тук с PDF файлове и видеоклипове и други подобни 80 00:04:28,740 --> 00:04:33,090 са няколко дузина клипове на семинари. 81 00:04:33,090 --> 00:04:37,380 Миналата година, например, имахме семинар за acing на вашите технически интервюта, 82 00:04:37,380 --> 00:04:40,980 ако сте всъщност търсят да си тръгна и да направя стаж или на пълен работен ден концерт. 83 00:04:40,980 --> 00:04:43,450 Развитие на Windows Mobile, Android развитие, Google Maps, 84 00:04:43,450 --> 00:04:47,700 API, CSS, разработване за BlackBerry, Emacs. 85 00:04:47,700 --> 00:04:52,610 Наистина, сте добре дошли да погледнете на всеки от тези семинари в удобно за вас време. 86 00:04:52,610 --> 00:04:57,080 И ние ще се държи някои нови този семестър, както добре. 87 00:04:57,080 --> 00:04:59,020 >> Така че това, което е напред с окончателния проект? 88 00:04:59,020 --> 00:05:01,090 Ами, на първо място, въпреки че тази дата е малко неизбежна, 89 00:05:01,090 --> 00:05:06,460 това е наистина само една възможност да започнем да мислим за окончателния проект съвсем реалистично. 90 00:05:06,460 --> 00:05:10,550 Ние знаем само началото на някои от това, което ние все пак ще разгледаме в хода, 91 00:05:10,550 --> 00:05:13,470 HTML, PHP и други подобни, но всички сме запознати с уеб 92 00:05:13,470 --> 00:05:16,270 и аз пристрастия този разговор към мрежата само защото 93 00:05:16,270 --> 00:05:18,380 повечето хора до края правене на уеб-базирани окончателните проекти, 94 00:05:18,380 --> 00:05:20,260 но това по никакъв начин не е необходимо условие. 95 00:05:20,260 --> 00:05:22,260 Използване на C е добре, цел C, Java, 96 00:05:22,260 --> 00:05:25,350 всеки друг език, може би знаете или искате да знаете е доста добре. 97 00:05:25,350 --> 00:05:29,370 Но за да получите сокове, произтичащи първоначално, ние ще очакваме представянето на preproposal 98 00:05:29,370 --> 00:05:33,520 , които на PDF на сайта, който е в cs50.net 99 00:05:33,520 --> 00:05:36,080 и в горния ляв ъгъл ще видите окончателен проект 100 00:05:36,080 --> 00:05:38,920 е спецификация за окончателния проект, 101 00:05:38,920 --> 00:05:41,470 и там подробности относно preproposal и други подобни. 102 00:05:41,470 --> 00:05:44,760 До голяма степен се свежда до имейл на преподавателската ви колега 103 00:05:44,760 --> 00:05:48,450 само за да завърже разговор с него или нея, за какво си мислиш. 104 00:05:48,450 --> 00:05:52,510 На projects.cs50.net е хранилище на идеи от хора на територията на колежа 105 00:05:52,510 --> 00:05:54,480 ако сте се борят да излезе с някаква идея, 106 00:05:54,480 --> 00:06:01,140 и manual.cs50.net/APIs е хранилище на връзки към APIs. 107 00:06:01,140 --> 00:06:06,710 >> Какво, обаче, е API? 108 00:06:06,710 --> 00:06:09,790 Какво е API? Казвал съм го поне два пъти 109 00:06:09,790 --> 00:06:12,640 според на преписи от последните няколко седмици. 110 00:06:12,640 --> 00:06:17,050 Какво е това? [Student, неразбираем] 111 00:06:17,050 --> 00:06:19,340 >> Добре, добре. Така програмен интерфейс нещо. 112 00:06:19,340 --> 00:06:22,710 Интерфейс за приложно програмиране, а това може да отнеме няколко форми, 113 00:06:22,710 --> 00:06:25,850 но това наистина се свежда до код 114 00:06:25,850 --> 00:06:29,660 че някой друг ХС писмено или данни, че някой друг е събрал 115 00:06:29,660 --> 00:06:33,670 , който е на ваше разположение в някои програмни начин. 116 00:06:33,670 --> 00:06:36,630 Можете да пишете код в C, PHP, Python, Ruby, 117 00:06:36,630 --> 00:06:38,760 независимо от езика си на избор обикновено е 118 00:06:38,760 --> 00:06:42,240 и може по някакъв начин да надграждат някой друг функционалност 119 00:06:42,240 --> 00:06:44,440 или на някой друг набор от данни. 120 00:06:44,440 --> 00:06:47,210 Например, ако отидете на този линк тук, 121 00:06:47,210 --> 00:06:50,750 и на следващата страница ще видите чифт връзки 122 00:06:50,750 --> 00:06:56,093 която имаме APIs CS50, които са много Харвард-ориентирана, и след това на трета страна APIs. 123 00:06:56,930 --> 00:06:59,300 Сред трета страна APIs са наистина полезни неща 124 00:06:59,300 --> 00:07:01,780 като е в състояние да изпрати SMS на хора, 125 00:07:01,780 --> 00:07:04,690 могат да получават SMS текстови съобщения от хора. 126 00:07:04,690 --> 00:07:08,160 И подобни неща, които може да нямат представа как да се прилагат, 127 00:07:08,160 --> 00:07:10,440 но благодарение на услуги, някои безплатни, а някои търговски, 128 00:07:10,440 --> 00:07:14,000 може да се изгради на върха на тях и да направи нещо от интерес за вас. 129 00:07:14,000 --> 00:07:16,990 Сред APIs CS50 са тези колежа ориентирани неща, като 130 00:07:16,990 --> 00:07:21,480 Харвард курсове, енергия, събития, храна, карти, новини, туитове и Shuttleboy собствена, 131 00:07:21,480 --> 00:07:23,940 и те са APIs, които изглеждат малко нещо като това. 132 00:07:23,940 --> 00:07:26,990 >> Остави ме да извадя на API HarvardFood. 133 00:07:26,990 --> 00:07:30,620 Ако някога сте били уебсайт HUD, вероятно сте били там 134 00:07:30,620 --> 00:07:35,410 да видим какво има за вечеря или да видя какво време е известно г-зала. 135 00:07:35,410 --> 00:07:38,000 Е, това не е особено лесен за навигация, 136 00:07:38,000 --> 00:07:41,100 и какво от това, което направихме преди известно време писахме софтуер, 137 00:07:41,100 --> 00:07:47,270 се случи да бъде в PHP, че всъщност екран ожулвания цялост на уебсайт HUD. 138 00:07:47,270 --> 00:07:51,400 На екрана нещо остъргвам означава да се напише програма на език, като PHP 139 00:07:51,400 --> 00:07:55,270 , който се преструва на браузъра, въпреки че може да го стартирате в командния ред, 140 00:07:55,270 --> 00:07:58,180 , която се преструва на браузъра, се свързва към уебсайта, 141 00:07:58,180 --> 00:08:01,480 изтегля HTML, езика, на който е написано, 142 00:08:01,480 --> 00:08:04,300 и след това го чете, или по-точно, тя прави разбор 143 00:08:04,300 --> 00:08:06,140 горе до долу, от ляво на дясно. 144 00:08:06,140 --> 00:08:08,870 И това, което направих, беше писахме нашия код по такъв начин, че 145 00:08:08,870 --> 00:08:12,910 всеки път, когато видя нещо в този HTML, което изглеждаше като нещо в менюто, 146 00:08:12,910 --> 00:08:16,470 като хамбургер, щяхме след това да импортирате, че в нашата база данни. 147 00:08:16,470 --> 00:08:20,410 И всеки път, когато видя хранителното съдържание, ние ще внасят в нашата база данни. 148 00:08:20,410 --> 00:08:23,090 И това, което направихме, беше да се възползва от факта, че HUD сайта, 149 00:08:23,090 --> 00:08:27,280 въпреки че тя може да бъде малко предизвикателство за нас, хората, за да се движите 150 00:08:27,280 --> 00:08:32,559 под капака на HTML, генерирани от собствените си компютърни програми. 151 00:08:32,559 --> 00:08:35,159 Така че всички HTML им, въпреки че може да изглежда разхвърлян, 152 00:08:35,159 --> 00:08:38,026 като повечето сайтове Под капака следва модел. 153 00:08:38,260 --> 00:08:40,799 Така че ние просто прекарали няколко часа разберете този модел 154 00:08:40,799 --> 00:08:44,240 , така че в края на краищата, ние изхвърлите всички разхвърлян HTML, 155 00:08:44,240 --> 00:08:47,340 всички естетиката на смели изложение и курсив и други подобни, 156 00:08:47,340 --> 00:08:52,350 и това, което сме в състояние да направи, е да се изложи, че едни и същи данни. 157 00:08:52,350 --> 00:08:54,870 Така например, по този начин. 158 00:08:54,870 --> 00:08:56,840 Така че ние, в съответствие с документацията тук, 159 00:08:56,840 --> 00:08:59,190 да информира света, че ако поискате URL 160 00:08:59,190 --> 00:09:03,310 че прилича на това, food.cs50.net / нещо, 161 00:09:03,310 --> 00:09:07,220 и ще ви даде определени параметри, които ние ще говорим днес, 162 00:09:07,220 --> 00:09:11,780 като края на дата и час, време за начална дата, грис и т.н., 163 00:09:11,780 --> 00:09:14,090 какви са нашите сървъри ще се върне към вас, например, 164 00:09:14,090 --> 00:09:18,740 се CSV файл, запетая separted ценности като файл на Excel, 165 00:09:18,740 --> 00:09:23,140 съдържащ всичко за закуска на тази дата през март миналата година 166 00:09:23,140 --> 00:09:25,450 , когато се случи да напиша тази документация. 167 00:09:25,450 --> 00:09:27,870 >> За тези, запознати, CSV не е единственият файлов формат. 168 00:09:27,870 --> 00:09:30,610 Има и друг формат, който е по-гъвкав 169 00:09:30,610 --> 00:09:32,670 JSON, JavaScript Object Notation. 170 00:09:32,670 --> 00:09:34,770 Данните могат да се върнат в този формат. 171 00:09:34,770 --> 00:09:38,110 Така че за вкъщи тук е, че независимо дали сте се потопите в този API 172 00:09:38,110 --> 00:09:41,170 или някой друг от CS50 или нещо там в интернет, 173 00:09:41,170 --> 00:09:45,560 или изобщо не осъзнават, че светът е все по-често започна да се стандартизират 174 00:09:45,560 --> 00:09:47,670 как общувам машини. 175 00:09:47,670 --> 00:09:50,660 Ние използваме стандартни формати за данни като CSV или JSON. 176 00:09:50,660 --> 00:09:54,320 И какво означава това за вас, можете да напишете интересна част от програма 177 00:09:54,320 --> 00:09:56,580 , която ви позволява вашето потребителско търсене антре меню за хранене, 178 00:09:56,580 --> 00:10:00,010 , който им позволява да създавате списъци с любими клипове, която ви позволява да ги получите текстови сигнали 179 00:10:00,010 --> 00:10:02,480 , когато любимата им храна е на път да бъде връчен в някои г-зала 180 00:10:02,480 --> 00:10:07,090 чрез използване на чужди данни и комплекти за изграждане на върха на тяхната приложен програмен интерфейс (API). 181 00:10:07,090 --> 00:10:13,600 Така че повече под формата на семинари и документация, че имате тук онлайн. 182 00:10:13,600 --> 00:10:16,450 Така че тези, които тогава са APIs. 183 00:10:16,450 --> 00:10:18,900 >> Това ни връща към HTML. Бързо рекапитулация. 184 00:10:18,900 --> 00:10:22,920 Какво е HTML? 185 00:10:22,920 --> 00:10:25,000 [Student, неразбираем] >> Добър. HyperText Markup Language. 186 00:10:25,000 --> 00:10:31,300 Някой друг, какво е Hypertext Markup Language? 187 00:10:31,300 --> 00:10:37,340 HyperText Markup Language. 188 00:10:37,340 --> 00:10:40,330 Добре. Така че, HTML, хипертекст. 189 00:10:40,330 --> 00:10:43,100 HyperText току-що се отнася до Интернет, за по-голямата си част. 190 00:10:43,100 --> 00:10:45,730 Markup означава, че той всъщност не е език за програмиране, HTML. 191 00:10:45,730 --> 00:10:48,120 Това не е език, който можете да изразите логика инча 192 00:10:48,120 --> 00:10:50,710 То не трябва цикли. То не трябва условия. 193 00:10:50,710 --> 00:10:52,820 Тя не разполага с функции, сами за себе си. 194 00:10:52,820 --> 00:10:56,680 Вместо това, тя има тези неща, наречени етикети, или по-правилно, елементи. 195 00:10:56,680 --> 00:10:59,970 И тези елементи имат начален маркер и краен маркери, 196 00:10:59,970 --> 00:11:04,300 или отворени тагове и затворени тагове, и това, което тези тагове обикновено означава за браузър е, 197 00:11:04,300 --> 00:11:09,270 започнем да правим нещо и след това да спрем да правим нещо, въпреки че има изключения от това. 198 00:11:09,270 --> 00:11:12,480 Понякога това е просто "сложи край на линията," например. 199 00:11:12,480 --> 00:11:15,150 И видяхме примери, че на другия ден, между смели изложение, 200 00:11:15,150 --> 00:11:17,430 редове, а след това две други етикети. 201 00:11:17,430 --> 00:11:19,880 Така че HTML е езикът, на който са написани уеб страници. 202 00:11:19,880 --> 00:11:23,760 Така че, ако отида в нещо като Google.com 203 00:11:23,760 --> 00:11:26,180 и издърпайте нагоре просто си начална страница, 204 00:11:26,180 --> 00:11:29,690 припомни, че ако кликнете с десния бутон на мишката или контролира кликнете 205 00:11:29,690 --> 00:11:32,140 и гледам при източника на изгледа на страницата, обикновено 206 00:11:32,140 --> 00:11:34,420 това е пълна бъркотия тези дни под предния капак, но това е защото 207 00:11:34,420 --> 00:11:38,170 компютри не се грижи за празно пространство, така че това не трябва да изглежда доста. 208 00:11:38,170 --> 00:11:40,240 Но ако увеличите на части от него, 209 00:11:40,240 --> 00:11:43,460 забележите, че Chrome, само за да бъде хубаво, цвят кодирани неща. 210 00:11:43,460 --> 00:11:48,460 В действителност, това е първият маркер, който видяхме в една уеб страница. 211 00:11:48,460 --> 00:11:51,750 И отново, HTML 5, последната версия на този език, 212 00:11:51,750 --> 00:11:53,830 няма това нещо в началото, 213 00:11:53,830 --> 00:11:57,820 00:12:03,580 но това е просто нещо като стандарт, който казва, хей свят, тук идва HTML файл във версия 5. 215 00:12:03,580 --> 00:12:08,920 >> Тук започва интересната част. Така 00:12:11,640 на HTML елементи последен път. 217 00:12:11,640 --> 00:12:14,630 Какви бяха тези две основни деца? 218 00:12:14,630 --> 00:12:17,170 Главата и тялото, като човек с татуировка преди малко. 219 00:12:17,170 --> 00:12:19,640 Има две части на уеб страница, главата и тялото, 220 00:12:19,640 --> 00:12:23,750 и изземване, а след това, че може би най-простият уеб страница, можем да направим изглежда по този начин. 221 00:12:23,750 --> 00:12:27,460 И аз съм го отстъп само за да бъде вид на чисти и спретнати, с моя код, 222 00:12:27,460 --> 00:12:30,710 но това, което е наистина важно тук е, че има някаква йерархия. 223 00:12:30,710 --> 00:12:35,420 И всеки маркер, който отворил съм съм затворен и че поради тази симетрия 224 00:12:35,420 --> 00:12:38,300 за всички на маркиране, което съм създал. 225 00:12:38,300 --> 00:12:41,620 Така че последния път, когато започнах да пиша уеб страници на собствения си лаптоп. 226 00:12:41,620 --> 00:12:45,470 Отворих редактиране на текст, аз спасих файла като hello.html, 227 00:12:45,470 --> 00:12:50,190 След това повлече файла на браузъра си, и готово, имах страница в Интернет. 228 00:12:50,190 --> 00:12:53,110 Сега, това не е точно така, имах страница на моя твърд диск, 229 00:12:53,110 --> 00:12:58,260 и аз бях буквално единственият човек в света, който ще видите, че уеб страница в браузъра. 230 00:12:58,260 --> 00:13:00,670 >> Така че днес, ще се въведе реален уеб сървър 231 00:13:00,670 --> 00:13:02,750 и понятието за действително служи съдържание в Интернет 232 00:13:02,750 --> 00:13:04,970 и как всичко това започва да се поберат заедно. 233 00:13:04,970 --> 00:13:08,350 Така се оказва, че през цялото това време в уреда CS50 234 00:13:08,350 --> 00:13:11,590 сте имали уеб сървър на вашия компютър. 235 00:13:11,590 --> 00:13:16,560 Ние сме в справедливостта, само го използва за Gedit, звъня, за GDB и други подобни, 236 00:13:16,560 --> 00:13:21,000 , но също така са инсталирали от нас за вас в уреда е уеб сървър, 237 00:13:21,000 --> 00:13:23,940 и че уеб сървъра се случва да бъде безплатен, с отворен код, 238 00:13:23,940 --> 00:13:26,580 един от най-популярните в света, наречен Apache. 239 00:13:26,580 --> 00:13:31,340 Повече техническа име е HTTPd г за услуга, 240 00:13:31,340 --> 00:13:34,110 което е технически дума за даден сървър. 241 00:13:34,110 --> 00:13:38,690 Така инсталирани в CS50 уред е уеб сървър, както и какво означава това? 242 00:13:38,690 --> 00:13:43,740 Е, уеб сървър, концептуално някои сървър в Интернет, който служи на уеб съдържание. 243 00:13:43,740 --> 00:13:48,630 Когато го попитали за даден файл, той плюе на HTML, който композира този файл, и готово. 244 00:13:48,630 --> 00:13:51,370 Вие виждате началната страница някои сайт. 245 00:13:51,370 --> 00:13:54,970 Но сървър е по-точно, част от софтуера. 246 00:13:54,970 --> 00:13:59,190 То не трябва да бъде на физическа машина, той просто трябва да бъде част от софтуер, работещ. 247 00:13:59,190 --> 00:14:01,980 Така че CS50 уред, разбира се, е част от софтуера 248 00:14:01,980 --> 00:14:04,270 въпреки че това е нещо преструвайки се на машина. 249 00:14:04,270 --> 00:14:06,960 Преструвайки се на компютър вътрешността на компютъра, 250 00:14:06,960 --> 00:14:11,140 , но това просто означава, че уредът със сигурност може да тече неща като уеб сървъри. 251 00:14:11,140 --> 00:14:13,260 Тя може действително да работи имейл сървъри. 252 00:14:13,260 --> 00:14:16,440 Бихме могли да стартирате сървър за съобщения в уреда, ако искаме да 253 00:14:16,440 --> 00:14:20,780 и наистина можем да се стартират един друг тип сървър, известен като сървър за база данни, MySQL. 254 00:14:20,780 --> 00:14:22,620 Но повече, че през следващата седмица. 255 00:14:22,620 --> 00:14:26,400 Това означава, че всъщност може да посетите уеб страници 256 00:14:26,400 --> 00:14:30,480 вътрешността на уреда ми с помощта на браузър вътре в уреда 257 00:14:30,480 --> 00:14:33,600 или дори на моя собствен лаптоп, Mac или моя компютър. 258 00:14:33,600 --> 00:14:37,780 И така, какво означава това? Оказва се, че всеки път, когато работите с Linux компютър, 259 00:14:37,780 --> 00:14:40,910 му прякор е "локалния хост. 260 00:14:40,910 --> 00:14:43,370 Не име на домейн, защото не сме купили име на домейн 261 00:14:43,370 --> 00:14:46,590 нещо подобно на уреда, така че неговото име по подразбиране е локалния хост. 262 00:14:46,590 --> 00:14:50,470 >> Но за да получи уреда, за да започнат да се показват на уеб-страници, 263 00:14:50,470 --> 00:14:52,270 ние трябва да ги създадете първата. 264 00:14:52,270 --> 00:14:55,200 Така че нека да го направим. Нека отидем в терминален прозорец тук 265 00:14:55,200 --> 00:14:58,190 и да забележите, че аз съм типичен Джон Харвард ред. 266 00:14:58,190 --> 00:15:01,670 Нека отида напред и да въведете ли, и ние ще видите някои познати неща от този семестър, 267 00:15:01,670 --> 00:15:04,580 десктоп, сваляния, Dropbox и т.н., 268 00:15:04,580 --> 00:15:07,540 но сега започваме да насочим вниманието си към една двойка. 269 00:15:07,540 --> 00:15:11,530 На много от Linux уеб сървъри има тази папка, наречена обществен HTML, 270 00:15:11,530 --> 00:15:15,630 но отиваме да пропуснете, че за сега и се съсредоточи върху това, хостове. 271 00:15:15,630 --> 00:15:18,850 Някой знае ли какво vhost е? 272 00:15:18,850 --> 00:15:21,110 Само глупав жаргон за виртуален хост, 273 00:15:21,110 --> 00:15:23,850 и какво означава това е, че на един типичен сървър 274 00:15:23,850 --> 00:15:26,810 всъщност може да бъде домакин на множество сайтове. 275 00:15:26,810 --> 00:15:31,500 Можете да си купите име на домейн, като foo.com, и можете да го бъде домакин на предприятието на сървъра. 276 00:15:31,500 --> 00:15:36,100 Но можете да си купите също bar.com и домакин на същия сървър. 277 00:15:36,100 --> 00:15:40,250 Причината е, че браузърите са достатъчно умни, за да информира сървъра 278 00:15:40,250 --> 00:15:45,880 , когато потребителят иска някаква уеб страница, какво име на домейн потребителят иска началната страница. 279 00:15:45,880 --> 00:15:48,760 Така че това, което е хубаво за това е, че не е нужно един физически сървър 280 00:15:48,760 --> 00:15:52,040 или CS50 уред за всеки уеб сайт, може да искате да създадете. 281 00:15:52,040 --> 00:15:55,520 Можете да използвате един и същ сървър и разработване на сто различни уебсайтове. 282 00:15:55,520 --> 00:15:58,770 И наистина, ако сте човек, който се опитва да започне уебсайт, 283 00:15:58,770 --> 00:16:02,100 независимо дали става дума за шега или за бизнес, обикновено ще излязат в интернет, 284 00:16:02,100 --> 00:16:04,650 и ще се плаща на някого десет долара на месец, сто долара на месец 285 00:16:04,650 --> 00:16:06,670 да бъде домакин на вашия сайт за вас. 286 00:16:06,670 --> 00:16:11,060 И начина, по който работи, е, че те се зареждат други хора 287 00:16:11,060 --> 00:16:13,160 десет долара на месец или сто долара на месец 288 00:16:13,160 --> 00:16:17,200 да бъде домакин на уебсайтове на други хора на една и съща техния сървър. 289 00:16:17,200 --> 00:16:20,740 Причина те могат да направят, че е така, защото на тази функция, наречена bhosts, 290 00:16:20,740 --> 00:16:23,790 но повече за това, когато дойде време за крайните проекти. 291 00:16:23,790 --> 00:16:28,360 >> За сега, нека просто да се потопите в там. Така CD хостове, и ако напиша ли сега, 292 00:16:28,360 --> 00:16:31,370 забележите, че има папка в локалния хост. 293 00:16:31,370 --> 00:16:33,440 Това е, защото по подразбиране, уредът цифри 294 00:16:33,440 --> 00:16:36,160 ти никога няма да тече един сайт на уреда. 295 00:16:36,160 --> 00:16:38,970 Това не е точно реалния свят, това не е реалния свят уеб сървър. 296 00:16:38,970 --> 00:16:41,690 Така че нека да отиде в локалния хост, а сега ще видим там 297 00:16:41,690 --> 00:16:44,290 един последен директория, наречена HTML. 298 00:16:44,290 --> 00:16:47,080 Така че това е малко по-дълбоко, йерархията, но ако и когато 299 00:16:47,080 --> 00:16:51,230 решите да започне разработването на множество уебсайтове през следващите месеци или година на н 300 00:16:51,230 --> 00:16:54,370 този вид структура на папките има тенденция да бъдат полезни. 301 00:16:54,370 --> 00:16:56,560 Сега нека отидем в HTML, както току-що, 302 00:16:56,560 --> 00:16:59,010 тип ли е, и нищо не е там. 303 00:16:59,010 --> 00:17:01,390 Така че сега да вървим напред и да направите това. Нека се отвори Chrome 304 00:17:01,390 --> 00:17:07,300 вътрешността на уреда, и ме пусна да http://localhost. 305 00:17:07,300 --> 00:17:14,440 Така буквално името ми уред, въведете и получавам индекс /. 306 00:17:14,440 --> 00:17:18,290 Това не е наистина ми показваше нещо на интереси, 307 00:17:18,290 --> 00:17:23,400 но се оказва, че това, което виждаме е, че папка, HTML. 308 00:17:23,400 --> 00:17:25,770 Няма нищо вътре в тази папка точно сега, 309 00:17:25,770 --> 00:17:28,750 така че вместо това, какво ще трябва да направя, е първо да създадете файл. 310 00:17:28,750 --> 00:17:33,530 Създаване на HTML файл, както направихме в понеделник, но този път го вътрешността на уреда. 311 00:17:33,530 --> 00:17:36,830 За тези от вас, които се опитват да следват заедно с лаптопи, 312 00:17:36,830 --> 00:17:42,040 нека направете едно настрана, че ще бъдат включени в уеб-базирания pset, 313 00:17:42,040 --> 00:17:44,280 но за да се получи това, за да работи за първи път, 314 00:17:44,280 --> 00:17:49,830 вие ще трябва да стартирате тази команда: Sudo началото HTTPD. 315 00:17:49,830 --> 00:17:52,670 И това отново ще се повтаря в последния pset, 316 00:17:52,670 --> 00:17:55,460 но ако играеш у дома, уеб сървър 317 00:17:55,460 --> 00:17:58,660 е изключено в уреда, и това е, така че да не се изцеди RAM 318 00:17:58,660 --> 00:18:01,960 и памет за 7 седмици на семестъра, когато ние не се нуждаят. 319 00:18:01,960 --> 00:18:05,190 Така че ще трябва да стартирате тази команда веднъж, и ще получите мощност като тази. 320 00:18:05,190 --> 00:18:07,920 Тогава би трябвало да могат да играят заедно. 321 00:18:07,920 --> 00:18:10,330 Сега нека се върнем в тази папка. 322 00:18:10,330 --> 00:18:12,770 Тази папка е празна, така че нека да започнете да създавате файл, 323 00:18:12,770 --> 00:18:16,360 Gedit hello.html. 324 00:18:16,360 --> 00:18:20,930 >> Добре. Gedit е отворена, както обикновено. Остави ме да DOCTYPE, HTML, 325 00:18:20,930 --> 00:18:25,270 HTML, ме остави пред себе си и да започне затворих маркери предварително. 326 00:18:25,270 --> 00:18:28,380 Сега имам на главата. Позволете ми да отида напред и затваряне на главата, 327 00:18:28,380 --> 00:18:32,450 нека сега направете заглавието на страницата, здравей свят като миналия път, 328 00:18:32,450 --> 00:18:34,790 близо заглавие, сега позволете ми да направя едно тяло. 329 00:18:34,790 --> 00:18:38,130 Тук ще кажа здравей, свят с някои exclams 330 00:18:38,130 --> 00:18:40,550 за да стане ясно, че това е друг низ. 331 00:18:40,550 --> 00:18:45,800 Затвори тяло, и сега ме пусна напред и подаде спаси. 332 00:18:45,800 --> 00:18:48,470 Нека да се върна на моя терминален прозорец, и ако пиша ли, 333 00:18:48,470 --> 00:18:51,830 Трябва да се предполага, hello.html. И аз правя. 334 00:18:51,830 --> 00:18:55,070 Така че сега, нека се върнем към браузъра си, щракнете върху презареди, 335 00:18:55,070 --> 00:18:58,930 и можете да видите, ние наистина сме вътре в този HTML папка. 336 00:18:58,930 --> 00:19:02,310 Не виждам още уеб страница, това е уеб сървъра Apache,, 337 00:19:02,310 --> 00:19:04,670 просто ми показа списък съдържанието на тази директория. 338 00:19:04,670 --> 00:19:08,260 Точно като Mac OS или Windows обикновено на собствения си локалния твърд диск. 339 00:19:08,260 --> 00:19:12,730 Така че, ако искате да видите тази уеб страница, да кликнете върху тази връзка тук, hello.html, 340 00:19:12,730 --> 00:19:15,160 И наистина, това е, което аз очаквах да видя. 341 00:19:15,160 --> 00:19:18,080 Сега, отново, това не е URL, че някой от вас да посетите сега, 342 00:19:18,080 --> 00:19:20,760 защото за вас, локалния хост, ако имате лаптоп, 343 00:19:20,760 --> 00:19:23,050 тя се позовава на собствения си например на уреда. 344 00:19:23,050 --> 00:19:25,900 Това е от моя личен уред, 345 00:19:25,900 --> 00:19:29,080 но това е нещо тъпо за мен да има, да има 346 00:19:29,080 --> 00:19:34,480 потребител като мен кликнете върху hello.html действително да видите съдържанието на тази страница. 347 00:19:34,480 --> 00:19:42,590 Оказва се, че уеб сървъри като Apache ви позволяват да имат по подразбиране за всеки уеб сървър. 348 00:19:42,590 --> 00:19:44,640 Забележете, имаме hello.html. 349 00:19:44,640 --> 00:19:48,410 Каква е команда в Linux за преименуване на файл? 350 00:19:48,410 --> 00:19:50,870 >> MV за движение. Така че нека да направим това, 351 00:19:50,870 --> 00:19:55,870 и ме остави да преименувате hello.html index.html. 352 00:19:55,870 --> 00:19:58,610 Нека ме въведете ли да потвърдя, че сега е преименуван. 353 00:19:58,610 --> 00:20:03,250 Сега това се случва - ако аз се връщам към локалния хост, 354 00:20:03,250 --> 00:20:06,710 забележите, че сега съм автоматично виждайки, че уеб страница. 355 00:20:06,710 --> 00:20:11,740 Това е идентична всъщност прави / index.html, 356 00:20:11,740 --> 00:20:14,740 но хубавото е, че уеб сървърът е фигуриращ 357 00:20:14,740 --> 00:20:18,830 о, ако имате файл, който, от конвенции, се нарича index.html, 358 00:20:18,830 --> 00:20:21,200 нека покажем на потребителя, че файлът по подразбиране 359 00:20:21,200 --> 00:20:25,290 , а не някаква глупава списъка с директории, които изобщо не е лесен за употреба. 360 00:20:25,290 --> 00:20:28,900 Всъщност, повечето уеб сайтове, които посещавате в интернет, не е нужно списък на файловете да кликнете върху, 361 00:20:28,900 --> 00:20:34,040 те просто ви показва съдържанието. Така че как можем да направим това, index.html. 362 00:20:34,040 --> 00:20:37,000 Така че това е забавно и добро, но това е доста проста уеб страница. 363 00:20:37,000 --> 00:20:41,640 Нека вървим напред и да се отворят index.html в моите хостове, 364 00:20:41,640 --> 00:20:47,620 локални хостове, HTML директория, и нека добавим нещо на по-голям интерес. 365 00:20:47,620 --> 00:20:56,120 Така че има здравей свят, нека вместо да каже "Това е CS50, Харвардския колеж. . - 366 00:20:56,120 --> 00:21:00,000 Така че в началото на описанието каталог на курсовете на някаква там. 367 00:21:00,000 --> 00:21:03,780 Сега, ако се презареди, че трябва да видите това в моята начална страница. 368 00:21:03,780 --> 00:21:09,560 Добре, и аз виждам, че, но предполагам, че искам да изброят повече съдържание в този файл. 369 00:21:09,560 --> 00:21:15,160 Мога да сляза тук и да кажа, предпоставки никой, 370 00:21:15,160 --> 00:21:18,740 въпреки че някои от вас вероятно са искали, "Ха-ха-ха, няма предпоставки. 371 00:21:18,740 --> 00:21:24,320 Но официално. Така презареди, и сега ние имаме същата приумица, която видяхме за последен път. 372 00:21:24,320 --> 00:21:26,240 Но защо е така? Това беше просто решение. 373 00:21:26,240 --> 00:21:31,440 Защо е тази страница, разбити? 374 00:21:31,440 --> 00:21:34,170 [Student, неразбираем] >> Да, ние сме решили този преди 375 00:21:34,170 --> 00:21:37,440 като изрично се казва на браузъра "нов ред". 376 00:21:37,440 --> 00:21:39,440 И това е така, защото, отново, браузърът е само да се направи 377 00:21:39,440 --> 00:21:42,610 изрично какъв език за маркиране казва да се направи, 378 00:21:42,610 --> 00:21:45,730 така, макар че може да удари веднъж или два пъти или дори десет пъти, 379 00:21:45,730 --> 00:21:49,870 ще комбинирате, че всички в един интервал, просто по силата на споразумение. 380 00:21:49,870 --> 00:21:52,770 Така че, ако наистина искате нов ред, трябва да се използва етикет ДВУСТАЕН, 381 00:21:52,770 --> 00:21:56,840 и сега предизвестие, като понеделник, сложих / вътрешността на този етикет, 382 00:21:56,840 --> 00:22:00,090 само защото това просто не се чувстват право 383 00:22:00,090 --> 00:22:02,990 да започне нов ред и след това да го спре нищо между тях. 384 00:22:02,990 --> 00:22:07,740 >> Така е прието в HTML е да се отварят и затварят етикет едновременно. 385 00:22:07,740 --> 00:22:11,050 Като настрана, ще видите много сайтове в книгите, които не правят това. 386 00:22:11,050 --> 00:22:14,240 Е правилно да се прави или да не го направя, но ще твърдят, 387 00:22:14,240 --> 00:22:17,430 че дизайнът-мъдър и стилистично, това е просто по-добре 388 00:22:17,430 --> 00:22:20,540 защото тогава всеки таг се отваря и затваря някак. 389 00:22:20,540 --> 00:22:23,370 Така че сега, нека спасим и се презарежда. Върнете се в браузъра, добре. 390 00:22:23,370 --> 00:22:26,680 Сега отбелязват известен напредък, но това не е напълно достатъчно. 391 00:22:26,680 --> 00:22:33,210 Нека вървим напред и започнете да пишете в някои дълго тяло на текста. 392 00:22:33,210 --> 00:22:40,610 Така че, да речем, "Един бърз кафява лисица скача над мързелив куче". 393 00:22:40,610 --> 00:22:42,700 А сега нека просто да копирате и поставяте това няколко пъти 394 00:22:42,700 --> 00:22:45,040 така, че ние имаме параграф от текст. 395 00:22:45,040 --> 00:22:47,780 Нека да се върна тук. Така че не е много добра. 396 00:22:47,780 --> 00:22:50,000 Имам нов ред, така че всичко е наред, 397 00:22:50,000 --> 00:22:52,140 но сега, след като сме Как да стигнем до точката на уеб страница 398 00:22:52,140 --> 00:22:55,640 че има много съдържание и не само отделни линии, за да демонстрират HTML, 399 00:22:55,640 --> 00:22:58,570 можем да започнем да мислим за тези неща, като действителните точки. 400 00:22:58,570 --> 00:23:01,590 И можем да започнем да се структурира нашата уеб страница малко по-чисто. 401 00:23:01,590 --> 00:23:05,120 И наистина, какво мога да направя, е да отидете тук вътре в тялото ми маркер 402 00:23:05,120 --> 00:23:09,400 и знаеш ли какво, ако "Това е CS50. . - наистина demarks началото на параграф, 403 00:23:09,400 --> 00:23:11,310 добре, нека маркират като такива. 404 00:23:11,310 --> 00:23:13,570 Нека тире текст, само по силата на споразумение, позволете ми да кажа 405 00:23:13,570 --> 00:23:15,710 че този параграф свършва тук, 406 00:23:15,710 --> 00:23:18,320 и след това, отколкото този нов ред, нека да кажа само 407 00:23:18,320 --> 00:23:23,300 , че това принадлежи и като нов параграф, 408 00:23:23,300 --> 00:23:27,610 и аз просто ще бързо тире само с clobbering всички тези неща. 409 00:23:27,610 --> 00:23:30,660 >> Така че сега имаме отстъп параграф, 410 00:23:30,660 --> 00:23:33,510 и сега нашата маркиране започва да се получи малко по- 411 00:23:33,510 --> 00:23:37,070 семантично съответствие с това, което се опитваме да направим. 412 00:23:37,070 --> 00:23:40,130 Ние имаме една точка, така че да го наричат ​​параграф с етикет стр.. 413 00:23:40,130 --> 00:23:43,370 Имаме втора алинея, така че нека го наричат ​​параграф с етикет стр.. 414 00:23:43,370 --> 00:23:45,850 И сега, какво браузъра обикновено правя 415 00:23:45,850 --> 00:23:48,490 е точно като в една английска книга или есе, 416 00:23:48,490 --> 00:23:51,280 , където обикновено се наблюдават някои редове между параграфите. 417 00:23:51,280 --> 00:23:53,720 Браузъри ще направи това за вас автоматично. 418 00:23:53,720 --> 00:23:56,680 Така че сега имаме две точки и можем да продължим това. 419 00:23:56,680 --> 00:23:58,770 Но, разбира се, в интернет, когато имате органите на текст 420 00:23:58,770 --> 00:24:01,370 това не е обикновено само на огромни петна на текст. 421 00:24:01,370 --> 00:24:04,040 Често има хипервръзки там. 422 00:24:04,040 --> 00:24:07,250 Така че, ако искаме, например, да включват някои връзки там, 423 00:24:07,250 --> 00:24:10,760 Предполагам, че това, което може да бъде от интерес в каквато и уеб страница Аз съм създаване тук - 424 00:24:10,760 --> 00:24:12,780 нека да отида до Google.com, 425 00:24:12,780 --> 00:24:16,540 и нека ме търсят за бързо кафява лисица. 426 00:24:16,540 --> 00:24:22,150 Отиди на Google изображения, и, какво ще кажеш - това е сладък. 427 00:24:22,150 --> 00:24:27,420 Ние ще отидем с това. Така че тук имаме бързо кафява лисица скокове над мързелив куче. 428 00:24:27,420 --> 00:24:30,560 Така че това, което аз ще направя тук, само за целите на демонстрацията, 429 00:24:30,560 --> 00:24:32,950 е да се предположи, че този образ е на моя сървър, 430 00:24:32,950 --> 00:24:35,240 и аз бяхме създаването на тези изображения. 431 00:24:35,240 --> 00:24:38,720 Което току-що пък бе кликнете с десния бутон на мишката или контролира кликване върху изображението, 432 00:24:38,720 --> 00:24:42,370 и това, което ще видите в повечето браузъри е малко меню - 433 00:24:42,370 --> 00:24:48,800 спрете да правите това - малко меню, което ви позволява да изберете място на копие връзка или URL копие. 434 00:24:48,800 --> 00:24:52,750 Така че нека да се върна сега, за да ми HTML, и предполагам, че искам 435 00:24:52,750 --> 00:24:56,420 хипервръзка към друга уеб страница. 436 00:24:56,420 --> 00:24:58,640 >> Какво е етикет за това? 437 00:24:58,640 --> 00:25:01,650 [Student, неразбираем] >> Да. Така HREF за хипер справки. 438 00:25:01,650 --> 00:25:04,660 Нека вървим напред и поставете инча 439 00:25:04,660 --> 00:25:07,290 Това е доста дълго URL, така че нека я увеличите обратно. 440 00:25:07,290 --> 00:25:09,950 Близки скоби, така че сега забележите, аз съм тук 441 00:25:09,950 --> 00:25:11,960 защото този адрес се случи да бъде доста дълъг. 442 00:25:11,960 --> 00:25:15,180 Нека превъртете тук до края на бърз кафява лисица, 443 00:25:15,180 --> 00:25:18,830 и след това да ми затворите този етикет с 00:25:21,280 затворен само името на етикет. 445 00:25:21,280 --> 00:25:24,470 Сега нека да вървим напред и спести този файл, презаредите уеб страница, 446 00:25:24,470 --> 00:25:27,880 и сега, по подразбиране, че ще трябва да бъдат подчертани със синьо, за мен, 447 00:25:27,880 --> 00:25:31,980 но наистина, аз вече могат да кликнете върху това и готово. Налице е този образ. 448 00:25:31,980 --> 00:25:33,990 И това не трябва да бъде образ, може да са свързани 449 00:25:33,990 --> 00:25:36,270 някой друг случаен сайт в Интернет. 450 00:25:36,270 --> 00:25:39,610 Бих могъл да направя това, например, с CS50, така че един последен пример тук. 451 00:25:39,610 --> 00:25:42,730 "Това е CS50 може да направи смисъл да отида, HREF = 452 00:25:42,730 --> 00:25:50,340 http://www.cs50.net, в близост цитат, в близост котва. 453 00:25:50,340 --> 00:25:53,990 Така че сега е още по-кратък URL, и този път ние няма да се свържете с изображение. 454 00:25:53,990 --> 00:25:57,880 Ние сме вместо да се свърже към друга страница. 455 00:25:57,880 --> 00:25:59,840 Сега имаме тук изображение. 456 00:25:59,840 --> 00:26:02,970 Имам чувството, че можем да направим малко по-добре, отколкото просто да се свързва с изображение. 457 00:26:02,970 --> 00:26:05,760 Какво ще стане, ако искаме наистина да го въплъщават в нашата собствена уеб страница? 458 00:26:05,760 --> 00:26:09,290 >> Е, какво мога да направя тук, отколкото сочат към тази графика, 459 00:26:09,290 --> 00:26:14,690 нека вместо намаляване на URL, и ние ще се отървем от тази хипервръзка и почистване на този нагоре. 460 00:26:14,690 --> 00:26:17,190 И ние ще отидем тук и да се отървете от това. 461 00:26:17,190 --> 00:26:20,910 Ние наистина не се нуждаят от всички тези изречения, така че нека да съкрати малко. 462 00:26:20,910 --> 00:26:24,530 И тогава тук ме пусна напред в нов параграф, 463 00:26:24,530 --> 00:26:30,100 кажа, че не искам текст, изображение, чийто източник се случва е, че URL. 464 00:26:30,100 --> 00:26:33,100 Изображение, като нов ред, е там или не е така. 465 00:26:33,100 --> 00:26:35,900 Така че, нека веднага да затворите този етикет. 466 00:26:35,900 --> 00:26:39,440 Позволете ми давай сега и затворете параграф, че съм вътре, 467 00:26:39,440 --> 00:26:43,010 и ако всичко върви добре с Здравей, свят, ако зареждам сега, 468 00:26:43,010 --> 00:26:45,520 Аз наистина, вижте вътре в собствената си уеб страница изображение. 469 00:26:45,520 --> 00:26:48,570 Така че сега имаме изображение етикет, етикет за котва и като 470 00:26:48,570 --> 00:26:51,320 и за добра мярка, позволете ми да направя едно друго нещо, което често се пренебрегва 471 00:26:51,320 --> 00:26:55,900 на уеб сайтове тези дни: Нека някой описателен текст за тази снимка 472 00:26:55,900 --> 00:26:58,090 за хора, които са на мобилно устройство 473 00:26:58,090 --> 00:27:00,640 и следователно не може да бъде в състояние много бързо да свалите този образ, 474 00:27:00,640 --> 00:27:03,310 за хора, които са слепи и не може да бъде в състояние да видите изображението 475 00:27:03,310 --> 00:27:06,480 но те могат да имат екранен четец, който може да им каже какво този образ е на. 476 00:27:06,480 --> 00:27:09,100 И за да направи това, там е друг атрибут за изображения тагове 477 00:27:09,100 --> 00:27:11,290 ALT, за алтернативен текст. 478 00:27:11,290 --> 00:27:14,650 И какво мога да направя тук е да кажеш: "Това е бърз кафява лисица". 479 00:27:14,650 --> 00:27:17,650 Така че дори ако човек не може да види изображението на екрана, 480 00:27:17,650 --> 00:27:20,560 той или тя може да чуе най-малко, тъй като с малко парче от софтуер, 481 00:27:20,560 --> 00:27:23,080 какво всъщност е на екрана. 482 00:27:23,080 --> 00:27:25,040 >> Това няма да се промени естетиката на страницата 483 00:27:25,040 --> 00:27:27,640 но със сигурност е добра практика за потребителите. 484 00:27:27,640 --> 00:27:31,760 Добре, нека да оставим тази уеб страница в сегашната му форма, 485 00:27:31,760 --> 00:27:33,890 но нека да видим, ако ние сега не може да се въведе 486 00:27:33,890 --> 00:27:36,210 някои по-добри подходи към написването на тези уеб страници, 487 00:27:36,210 --> 00:27:39,980 някои уроци, които ще ни служи добре както нашите страници получите повече и по-сложни. 488 00:27:39,980 --> 00:27:42,220 Това, което не започваш да се направи през следващите няколко седмици 489 00:27:42,220 --> 00:27:46,810 ви преведе през всички няколко дузина тагове HTML, че има. 490 00:27:46,810 --> 00:27:49,800 Това е подобно на нулата през седмица 0, то вероятно ще е достатъчно 491 00:27:49,800 --> 00:27:52,120 да се даде на високо равнище преглед на някои от концепциите, 492 00:27:52,120 --> 00:27:54,530 бърза обиколка на някои от блоковете, които вероятно са били в състояние, 493 00:27:54,530 --> 00:27:58,240 доста удобно, за да се придвижвате по своему, различните парчета от пъзел. 494 00:27:58,240 --> 00:28:00,460 И това ще се случи отново в HTML, най-вероятно, 495 00:28:00,460 --> 00:28:04,320 , при която има достатъчно ресурси в мрежата, че ще ви посочи, 496 00:28:04,320 --> 00:28:06,920 различни учебници, ако предпочитате да се чете учебник, 497 00:28:06,920 --> 00:28:10,560 , който ще ви преведе през всички различни неща, които можете да правите с HTML, 498 00:28:10,560 --> 00:28:16,100 но наистина, ние сме виждали до този момент в HTML-голямата част от основните понятия. 499 00:28:16,100 --> 00:28:19,900 Имаме идеята на етикети отварянето тагове, се затваря. 500 00:28:19,900 --> 00:28:22,100 Някои етикети, които са отворени, така и затворени 501 00:28:22,100 --> 00:28:24,620 в смисъл, че те са празни; трябва да има нищо вътре в тях 502 00:28:24,620 --> 00:28:27,490 като изображение тагове или нов ред, които са там само. 503 00:28:27,490 --> 00:28:32,330 Ние също изглеждаше вече понятието за атрибут, като ALT или източник. 504 00:28:32,330 --> 00:28:36,410 Забележете, че тези думи са склонни, по силата на споразумение, за да бъде кратко и сбито. 505 00:28:36,410 --> 00:28:39,140 >> Ние нямаме свобода на преценка какви са тези неща се наричат, 506 00:28:39,140 --> 00:28:42,060 дойде някой друг, който е изобретил HTML с тези имена. 507 00:28:42,060 --> 00:28:44,710 Така че просто трябва да започнем да знае или да погледнете нагоре, всеки път, когато се нуждаят от тях, 508 00:28:44,710 --> 00:28:47,160 какви имена са тези тагове и атрибути. 509 00:28:47,160 --> 00:28:49,510 В случай на тези атрибути, атрибути 510 00:28:49,510 --> 00:28:52,900 промяна на поведението на някои етикет. 511 00:28:52,900 --> 00:28:55,710 В този случай, източникът атрибут разказва изображението маркер 512 00:28:55,710 --> 00:28:57,940 това, което трябва да бъде източник на изображението. 513 00:28:57,940 --> 00:29:04,460 HREF атрибут разказва котва тагове какво всъщност трябва да се свързва с. 514 00:29:04,460 --> 00:29:06,800 Но по отношение на структурата на дадена уеб страница, въпреки че Facebook 515 00:29:06,800 --> 00:29:09,680 и Google и други подобни изглежда като пълна бъркотия 516 00:29:09,680 --> 00:29:12,560 под капака на пръв поглед, ако започне да чете през него 517 00:29:12,560 --> 00:29:16,950 по-методично, всички те следват този основен материал, основният структура. 518 00:29:16,950 --> 00:29:19,660 Но ние можем да подобрим стилизация на тези неща. 519 00:29:19,660 --> 00:29:24,180 Така че нека да отида до някои примери, които предварително подготвени. 520 00:29:24,180 --> 00:29:27,280 Позволете ми да отида напред и да ги копирате от друга папка тук 521 00:29:27,280 --> 00:29:29,380 и ги сложи в тази директория. 522 00:29:29,380 --> 00:29:32,210 В предварително, това което направих беше да подготвя някои файлове: 523 00:29:32,210 --> 00:29:35,670 search0, search1, search2 и search3 и 4. 524 00:29:35,670 --> 00:29:38,740 Нека вървим напред и да се отворят първата от тези файлове, 525 00:29:38,740 --> 00:29:42,570 и нека да видим дали не можем да започваме да създаваме нашата собствена търсачка. 526 00:29:42,570 --> 00:29:46,530 В горната част на този файл, както е обикновено в клас, само един куп коментари. 527 00:29:46,530 --> 00:29:49,760 В HTML, обаче, средствата, чрез които да започнете коментар 528 00:29:49,760 --> 00:29:55,640 <- и тогава вие сте вътре на коментар, мулти-лайн коментар. 529 00:29:55,640 --> 00:29:59,800 Когато сте готови да спрат този коментар, можете да направите ->. 530 00:29:59,800 --> 00:30:02,380 Така че всичко на върха в синьо е просто коментар. 531 00:30:02,380 --> 00:30:04,620 >> Това е моят DOCTYPE декларация, която отново, 532 00:30:04,620 --> 00:30:07,080 можете просто да копирате и поставите на вярата, за сега. 533 00:30:07,080 --> 00:30:10,410 Това просто казва на браузъра, "Тук идва някои HTML 5. 534 00:30:10,410 --> 00:30:13,600 Долу, че по линия 14, е първата от действителните тагове, 535 00:30:13,600 --> 00:30:16,900 и това просто казва, както и преди, тук идва някои HTML, 536 00:30:16,900 --> 00:30:19,460 тук идва на главата на страницата си, тук идва заглавието, 537 00:30:19,460 --> 00:30:23,900 и след това обратно, че това е за титлата, че това е в главата. 538 00:30:23,900 --> 00:30:26,460 Ето сега идва тялото на моята страница. 539 00:30:26,460 --> 00:30:31,040 Така няколко нови етикети: h1 стои за позиция 1. 540 00:30:31,040 --> 00:30:33,850 Има традиция в HTML за много години назад 541 00:30:33,850 --> 00:30:37,990 с различни размери на текст. 542 00:30:37,990 --> 00:30:41,980 И през деня, означава всяка една, като цяло, само големи и смели. 543 00:30:41,980 --> 00:30:45,860 Но има и h2, който е голям, но не е чак толкова голям и смел. 544 00:30:45,860 --> 00:30:49,320 Има h3, което е нещо голямо, но не са чак толкова големи и смели, 545 00:30:49,320 --> 00:30:52,380 и така нататък, чак до h6. 546 00:30:52,380 --> 00:30:55,550 Тези дни, обаче, H1, H2 и H3 наистина означава 547 00:30:55,550 --> 00:30:57,980 да имат по-семантично значение за тях, 548 00:30:57,980 --> 00:31:01,100 който h1 е наистина заглавие: заглавието на дадена уеб страница, 549 00:31:01,100 --> 00:31:04,210 заглавието на колона или нещо подобно, че от текста. 550 00:31:04,210 --> 00:31:09,030 Така че аз съм умишлено каза h1 CS50 търсене> h1 551 00:31:09,030 --> 00:31:12,640 за да се посочи, че това наистина е заглавието, заглавието на страницата си. 552 00:31:12,640 --> 00:31:14,850 Не е заглавието в смисъл, заглавната лента, 553 00:31:14,850 --> 00:31:18,960 но заглавие, което всъщност виждате в самата уеб страница, в тялото. 554 00:31:18,960 --> 00:31:20,990 Сега това, вероятно можете да се досетите какво е то, 555 00:31:20,990 --> 00:31:23,110 въпреки че имаме няколко нови парчета на синтаксиса. 556 00:31:23,110 --> 00:31:25,930 Това е форма. Така че наистина става интересно в интернет 557 00:31:25,930 --> 00:31:28,770 когато сайтове вход от потребителите. 558 00:31:28,770 --> 00:31:31,700 В този клас, в проблема за уеб програмиране, 559 00:31:31,700 --> 00:31:33,880 ние няма да се направи сайт, на себе си, 560 00:31:33,880 --> 00:31:37,570 със статично съдържание, което показва снимки, които сте направили, 561 00:31:37,570 --> 00:31:40,010 или това е моята автобиография, и неща за мен, 562 00:31:40,010 --> 00:31:42,450 защото тези неща са сравнително лесно да се съберат. 563 00:31:42,450 --> 00:31:44,400 Трудно е да направим нещата по-красиво в мрежата, 564 00:31:44,400 --> 00:31:46,390 но поне поставяне на съдържание е доста тривиално. 565 00:31:46,390 --> 00:31:49,380 Но нещата стават наистина интересно, когато някой може да посещават вашия сайт 566 00:31:49,380 --> 00:31:52,260 и да предостави информация и могат да попълват формуляри, 567 00:31:52,260 --> 00:31:55,800 да проверите квадратчетата и могат да взаимодействат с вашия сайт. 568 00:31:55,800 --> 00:31:57,780 И наистина, най-вероятно всеки уеб сайт, ви е грижа за 569 00:31:57,780 --> 00:32:00,710 тези дни, във всеки детайл, е някак интерактивни. 570 00:32:00,710 --> 00:32:03,110 Facebook, Google и други подобни, които вземат приноса на потребителите 571 00:32:03,110 --> 00:32:05,100 и производството на потребителски изход. 572 00:32:05,100 --> 00:32:07,780 >> Така че нека започнем да го направя сега. Да преход сега 573 00:32:07,780 --> 00:32:11,150 само с помощта на HTML за маркиране на статично съдържание 574 00:32:11,150 --> 00:32:14,790 тъй като вместо механизъм за доставка на динамично съдържание. 575 00:32:14,790 --> 00:32:17,350 И към тази цел, нека да реализираме нашата собствена търсачка. 576 00:32:17,350 --> 00:32:20,820 Нека го направим, както следва. Ето формата маркер. 577 00:32:20,820 --> 00:32:24,090 Атрибут за действие се посочва, че когато потребителят попълва тази форма 578 00:32:24,090 --> 00:32:28,400 с тяхната клавиатура, то ще бъде представено на този адрес тук. 579 00:32:28,400 --> 00:32:31,230 Така че аз съм вид измама. Това ще ни отнеме малко повече време 580 00:32:31,230 --> 00:32:33,780 от един клас да прилага цялото търсачката, 581 00:32:33,780 --> 00:32:35,880 така че ние просто ще направи предния край, така да се каже. 582 00:32:35,880 --> 00:32:38,650 Ние ще направим частта, която позволява на потребителя търсене, и ние ще сортирате шута към Google 583 00:32:38,650 --> 00:32:40,950 най-трудната част за намиране на резултатите от търсенето, 584 00:32:40,950 --> 00:32:43,520 но, по-специално, аз отивам да говоря с Google на уеб сървър 585 00:32:43,520 --> 00:32:46,710 използва един от две много популярни методи. 586 00:32:46,710 --> 00:32:50,000 Един се получи, друг, че ние в крайна сметка ще видите, е мнение, 587 00:32:50,000 --> 00:32:52,660 въпреки че има и други, които са по-често използвани. 588 00:32:52,660 --> 00:32:56,440 Така се получи просто внушава идеята за, искам да получа част от съдържанието, да получите някои резултати от търсенето. 589 00:32:56,440 --> 00:32:58,440 Това, може би ще се досетите какво прави това. 590 00:32:58,440 --> 00:33:01,900 Това е някакъв вид на входа, е в действителност, ще изглежда като текстово поле, 591 00:33:01,900 --> 00:33:05,200 и името на този вход, името на тази променлива, така да се каже, 592 00:33:05,200 --> 00:33:08,610 ще бъде Q за заявката от конвенцията. 593 00:33:08,610 --> 00:33:11,700 И отново, вида на този вход не се случва да бъде отметка; 594 00:33:11,700 --> 00:33:13,890 това няма да бъде менюто, той ще бъде текстово поле 595 00:33:13,890 --> 00:33:18,060 обозначен с този атрибут, и това текстово поле, 596 00:33:18,060 --> 00:33:20,680 като нов ред, или е там или не. 597 00:33:20,680 --> 00:33:24,480 Така че ние имаме празен елемент с наклонена черта вътре в този етикет. 598 00:33:24,480 --> 00:33:28,050 Тогава аз отивам да се сложи край на линията, и можете да, може би, познайте какво ще направи. 599 00:33:28,050 --> 00:33:30,210 Това е друг вид на формата вход. 600 00:33:30,210 --> 00:33:32,350 >> Това ще се използва за подаване на формуляра. 601 00:33:32,350 --> 00:33:36,140 Така че това ще бъде голям бутон, който потребителят може да щракне да представят формуляра, 602 00:33:36,140 --> 00:33:40,800 и етикет върху този бутон ще бъде "CS50 Търсене". 603 00:33:40,800 --> 00:33:44,170 Затвори форма, плътно тяло, в близост HTML. 604 00:33:44,170 --> 00:33:46,280 Нека да видим какво имаме под формата на тази страница. 605 00:33:46,280 --> 00:33:48,260 Така че нека да отида в браузъра си, 606 00:33:48,260 --> 00:33:50,360 ме пуснеш, все още, за да локалния хост. 607 00:33:50,360 --> 00:33:54,650 Това все още е index.html, така че, ако искате да видите този файл, наречен search0 608 00:33:54,650 --> 00:33:59,710 Може просто да направи / search0.html, въведете 609 00:33:59,710 --> 00:34:01,880 и първото от моите грешки. 610 00:34:01,880 --> 00:34:04,400 Какво става? Очевидно не е нужно разрешение 611 00:34:04,400 --> 00:34:06,430 за достъп до този файл, поради някаква причина. 612 00:34:06,430 --> 00:34:10,170 Но това е, защото, за разлика от работата, която съм правил до този момент в C 613 00:34:10,170 --> 00:34:14,340 където се предполага, че програмите, които пишат да runable от вас, 614 00:34:14,340 --> 00:34:17,590 изпълняван от вас, че не е наистина в интернет, 615 00:34:17,590 --> 00:34:21,010 с което понякога може да искате да създавате файлове на сървъра, 616 00:34:21,010 --> 00:34:23,310 но не искате целият свят да бъде в състояние да ги види. 617 00:34:23,310 --> 00:34:25,469 , По-скоро искам светът да видите някои файлове 618 00:34:25,469 --> 00:34:27,730 но други не, просто заради неприкосновеността на личния живот. 619 00:34:27,730 --> 00:34:30,730 Така че това е повече от едно неучастие в базата, когато правиш неща в мрежата. 620 00:34:30,730 --> 00:34:32,810 И така, нека всъщност въвежда ли тук, 621 00:34:32,810 --> 00:34:37,440 и ще видите файловете, които имам, но припомни, че ако го направя ли-л за дълго, 622 00:34:37,440 --> 00:34:41,520 Ще получите по-дълъг списък, който ми дава малко повече подробности за тези файлове 623 00:34:41,520 --> 00:34:45,139 , които са сега, наистина, за първи път, значение за нас. 624 00:34:45,139 --> 00:34:47,840 Забележете, че в дясно са имената на мои файлове, 625 00:34:47,840 --> 00:34:50,690 и след момента, в който последно са били променяни или копирани. 626 00:34:50,690 --> 00:34:54,370 Този номер тук е какво? Спомняте ли си? 627 00:34:54,370 --> 00:34:56,400 Размерът в байтове, колко е голям файла. 628 00:34:56,400 --> 00:34:59,520 >> Така че изглежда да има някакъв вид на лого, че тук е по-голям от всички други файлове. 629 00:34:59,520 --> 00:35:03,610 Това е, което съм аз, това е, което съм и коя група съм. 630 00:35:03,610 --> 00:35:07,430 Но след това, тук от ляво е малко загадъчен последователност, 631 00:35:07,430 --> 00:35:10,040 и ние говорихме, мисля, накратко за това в миналото, 632 00:35:10,040 --> 00:35:12,050 но това трябва да се направи с разрешения. 633 00:35:12,050 --> 00:35:14,020 И дори ако това е малко неясен, 634 00:35:14,020 --> 00:35:17,270 RW вероятно означава, четат и пишат. 635 00:35:17,270 --> 00:35:22,560 Така се оказва, че тези тирета означават различни набори от разрешения за различните хора. 636 00:35:22,560 --> 00:35:24,730 И моделът е по същество, както следва. 637 00:35:24,730 --> 00:35:27,650 Когато видите поредица от тирета тук, те изглеждат по следния начин. 638 00:35:27,650 --> 00:35:30,450 Има тире, след това има още три тирета, 639 00:35:30,450 --> 00:35:33,390 след това има още три часа, след това има още три. 640 00:35:33,390 --> 00:35:36,800 Първият от тях е тире или това е реклама за директорията. 641 00:35:36,800 --> 00:35:40,220 Така че е доста лесно. Ако това е папка, казва г, в противен случай това е с тире. 642 00:35:40,220 --> 00:35:44,080 Има няколко други случаи, но за сега ние просто ще се грижи за файлове и директории. 643 00:35:44,080 --> 00:35:48,090 Тези следващите три тирета - и аз изкуствено поставена пространства. 644 00:35:48,090 --> 00:35:50,490 Те са били очевидно не там, когато ги видяхме преди малко. 645 00:35:50,490 --> 00:35:52,900 Това са разрешения на собственика на файла, 646 00:35:52,900 --> 00:35:55,840 и припомни преди секунда, че четат и пишат. 647 00:35:55,840 --> 00:35:58,560 Това е, защото аз като човек, който е създал този файл преди малко, 648 00:35:58,560 --> 00:36:01,250 I, по подразбиране, на компютър с Linux, 649 00:36:01,250 --> 00:36:03,910 имат възможност да продължи четенето и писането на този файл. 650 00:36:03,910 --> 00:36:07,170 >> Така че операционната система просто ми дава RW автоматично. 651 00:36:07,170 --> 00:36:10,840 Средните са свързани с моята група, че на студентите, 652 00:36:10,840 --> 00:36:14,590 която е нещо безсмислено върху уреда, защото аз съм единственият човек, който да използвате уреда. 653 00:36:14,590 --> 00:36:16,620 Така че нека само размахва ръцете ми, че за сега. 654 00:36:16,620 --> 00:36:19,190 Но последните са най-важни за уеб. 655 00:36:19,190 --> 00:36:21,580 Това е всеки друг в света, както и факта, 656 00:36:21,580 --> 00:36:24,600 че това е --- означава, че никой друг в света 657 00:36:24,600 --> 00:36:26,680 има всички разрешения за този файл. 658 00:36:26,680 --> 00:36:29,180 Ясно е проблем, така че трябва да се определи това 659 00:36:29,180 --> 00:36:33,830 като по някакъв начин дава на света това, което? Прочети пиша? 660 00:36:33,830 --> 00:36:35,850 Това е може би тъпо, нали? Аз не искам никого в Интернет 661 00:36:35,850 --> 00:36:38,530 да отида да посети страницата ми и някак си се промени този файл, 662 00:36:38,530 --> 00:36:40,800 въпреки че те наистина не можех с HTML файл, 663 00:36:40,800 --> 00:36:44,110 но само по принцип, най-вероятно просто искате те да могат да го прочетат. 664 00:36:44,110 --> 00:36:47,910 Какво означава това да го прочетеш? Това не означава, че започваш да се грижи за действителното HTML, 665 00:36:47,910 --> 00:36:51,820 но браузър трябва да бъде в състояние да прави разбор на този език за маркиране, 666 00:36:51,820 --> 00:36:53,720 горе до долу, от ляво на дясно. 667 00:36:53,720 --> 00:36:57,990 Значи някой в ​​мрежата трябва да бъде в състояние да го прочете, така че минимално трябва да я дам R. 668 00:36:57,990 --> 00:37:00,240 Мога да направя това по няколко различни начина, но може би 669 00:37:00,240 --> 00:37:03,080 най-простият е да стартирате тази команда. 670 00:37:03,080 --> 00:37:10,860 CHMOD, промяна на режима, а след това A + R, така че всички, всеки в света + Прочети 671 00:37:10,860 --> 00:37:13,830 и след това името на файла, search0.html. 672 00:37:13,830 --> 00:37:18,310 >> Сега, ако го направя отново LS-л, забележете, че този файл се е променило, 673 00:37:18,310 --> 00:37:21,440 и наистина съм включен R за всеки. 674 00:37:21,440 --> 00:37:23,350 Аз също се оказа за моята група, но това е добре, 675 00:37:23,350 --> 00:37:27,150 защото, ако аз се обърна за всички, моята група е подмножество на това. 676 00:37:27,150 --> 00:37:31,480 Така че това е добре също. Това просто означава, че компютърът е сега да се чете. 677 00:37:31,480 --> 00:37:34,430 Сега ме пуснеш обратно към браузъра си, щракнете върху презареди. 678 00:37:34,430 --> 00:37:36,330 А-ха. Ние сега имаме CS50 Търсене. 679 00:37:36,330 --> 00:37:39,830 Съм увеличени в малко изкуствено - доста отвратителен търсачката. 680 00:37:39,830 --> 00:37:41,930 Но нека да видим дали тя наистина работи. 681 00:37:41,930 --> 00:37:45,880 Първо, позволете ми да направя една бърза проверка на здрав разум, да ме контролират, кликнете и преглед на изходния код на страницата. 682 00:37:45,880 --> 00:37:50,780 Забележете, че в рамките на Chrome ние сега виждаме същото HTML че аз самият създаден. 683 00:37:50,780 --> 00:37:55,420 Да не се бърка тук, все пак. Не мога да започна промяната на кода тук, 684 00:37:55,420 --> 00:37:59,420 , защото браузъра има само за четене на този кодекс. 685 00:37:59,420 --> 00:38:06,060 Браузърът е зададен локалния хост файл, наречен search0.html. 686 00:38:06,060 --> 00:38:09,490 Сега е чиста случайност, че уредът 687 00:38:09,490 --> 00:38:13,480 се случва да бъде на същия компютър като моя браузър. 688 00:38:13,480 --> 00:38:20,470 Бих могъл просто, което е същото, са въвели в www.facebook.com/search0.html 689 00:38:20,470 --> 00:38:23,830 и ако Facebook файл с име, че аз тогава ще се видим HTML им. 690 00:38:23,830 --> 00:38:27,360 И, разбира се, аз не мога да променя файла, който се връща от Facebook,. 691 00:38:27,360 --> 00:38:29,360 Така че сега ние сме вид размива линии. 692 00:38:29,360 --> 00:38:32,130 Уредът е на сървъра, обслужващи уеб страници, 693 00:38:32,130 --> 00:38:34,870 но тя също е клиент, в смисъл, че аз съм с помощта на браузър 694 00:38:34,870 --> 00:38:37,630 всъщност говорим на този сървър. 695 00:38:37,630 --> 00:38:39,610 Така че нека да видим дали Google търсачката ми работи. 696 00:38:39,610 --> 00:38:44,930 Позволете ми да отида напред и да търсят бърз кафява лисица, въведете. 697 00:38:44,930 --> 00:38:47,540 И готово, аз сега имам моя собствена търсачка. 698 00:38:47,540 --> 00:38:51,460 >> Но как става тази работа? 699 00:38:51,460 --> 00:38:55,380 Bit на участък, но и сега не можете да видите, точно частта, която е от интерес. 700 00:38:55,380 --> 00:38:57,370 Забележете какво се случва. 701 00:38:57,370 --> 00:39:00,430 Обърнете внимание на URL. Оказва се, че този метод, 702 00:39:00,430 --> 00:39:02,780 нарича се, е супер проста. 703 00:39:02,780 --> 00:39:10,270 Когато зададете във форма, която искате да "" резултатите от някои сървър, 704 00:39:10,270 --> 00:39:13,200 това, което ще направи, е да вземе каквото сте въвели във формата 705 00:39:13,200 --> 00:39:15,290 и го сложи в URL. 706 00:39:15,290 --> 00:39:18,580 Ще стандартизира как той получава в URL, както следва. 707 00:39:18,580 --> 00:39:22,290 Забележете, че това е URL, това е стойността на моето действие атрибут. 708 00:39:22,290 --> 00:39:24,730 Това е мястото, където исках форма до края. 709 00:39:24,730 --> 00:39:26,950 Но тогава забележите това въпросителен знак. 710 00:39:26,950 --> 00:39:30,230 Това е конвенция за Web, чрез която да се осигури въвеждане от потребителя 711 00:39:30,230 --> 00:39:35,320 уеб сайт, добавяне на URL въпросителен знак, 712 00:39:35,320 --> 00:39:38,330 и тогава ще трябва цял куп двойки ключ-стойност. 713 00:39:38,330 --> 00:39:42,380 Името на ключ, иначе известни като параметър в уеб, 714 00:39:42,380 --> 00:39:46,380 тогава ще има знак за равенство, тогава ще трябва стойността на този параметър. 715 00:39:46,380 --> 00:39:49,810 Така че това е по същество името на променливата и стойността на променлива, 716 00:39:49,810 --> 00:39:54,250 но имената на тези променливи и стойности от HTML форма. 717 00:39:54,250 --> 00:39:56,250 Защо са плюсове, не мислиш ли? 718 00:39:56,250 --> 00:39:59,340 Защото аз не въвеждате + между думите ми. 719 00:39:59,340 --> 00:40:01,430 [Student, неразбираем] 720 00:40:01,430 --> 00:40:05,080 >> Да, това е само за разстояние. Коефициентите са, когато сте виждали URL 721 00:40:05,080 --> 00:40:07,320 никога няма интервали в него, дори и само заради 722 00:40:07,320 --> 00:40:09,440 ако имаше, не можеше наистина да копирате и го поставете 723 00:40:09,440 --> 00:40:12,700 в IM или в имейл, защото може да се счупи. 724 00:40:12,700 --> 00:40:15,420 Вие искате всичко да бъде една съседна низ от символи. 725 00:40:15,450 --> 00:40:18,450 >> Така че браузърът е достатъчно умен, за да разбере, ъ-ъ-ъ-ъ. 726 00:40:18,450 --> 00:40:22,610 Не просто да сложите пространството си там. Нека кодиране на място в някои стандартния начин. 727 00:40:22,610 --> 00:40:25,170 Един от конвенциите за това е да има браузъра 728 00:40:25,170 --> 00:40:29,350 автоматично +, където в противен случай ще има място. 729 00:40:29,350 --> 00:40:32,140 Така че сега, забележете, Google е вид лесен за употреба. 730 00:40:32,140 --> 00:40:34,380 Аз със сигурност не е създал тази уеб страница, 731 00:40:34,380 --> 00:40:37,200 но те са prepopulated своя текстово поле 732 00:40:37,200 --> 00:40:39,490 с какво точно написах инча 733 00:40:39,490 --> 00:40:43,090 Да предположим, че искате да търсите за нещо друго, като мързелив куче. 734 00:40:43,090 --> 00:40:45,340 Мога само да въведете тук, повторно търсене. 735 00:40:45,340 --> 00:40:47,730 Забележете, че URL променя тук, 736 00:40:47,730 --> 00:40:51,390 но забелязах това, че всъщност може да се търси нещо, което искам 737 00:40:51,390 --> 00:40:53,610 само от разбиране как URL адреси работата. 738 00:40:53,610 --> 00:40:56,840 Бих могъл да направя мързелива котка, въведете 739 00:40:56,840 --> 00:41:01,370 и забележи, сега съм много мързелив - трябва ли? Имам чувството, че трябва. 740 00:41:01,370 --> 00:41:09,900 Получавам много мързелива котка. 741 00:41:09,900 --> 00:41:11,930 Добре. Това е един от най-тъпото неща, които сме направили. 742 00:41:11,930 --> 00:41:17,160 Но това е мързелива котка. 743 00:41:17,160 --> 00:41:19,730 Във всеки случай, това, което е ключът за вкъщи? 744 00:41:19,730 --> 00:41:22,830 Сега сме на игра в света на HTTP. 745 00:41:22,830 --> 00:41:26,050 HTML е само на този език за маркиране, отварящия таг, в близост етикет, 746 00:41:26,050 --> 00:41:29,490 , който казва на браузъра как да направят съдържанието на уеб страница. 747 00:41:29,490 --> 00:41:32,850 Но когато започне да предава данни в интернет 748 00:41:32,850 --> 00:41:36,290 между уеб браузър и сървъра, това е мястото, където този протокол 749 00:41:36,290 --> 00:41:39,370 известен като Hypertext Transfer Protocol поема. 750 00:41:39,370 --> 00:41:42,630 Това е нещо, на човешкото конвенция, когато Сам и аз си стиснаха ръцете в понеделник, 751 00:41:42,630 --> 00:41:48,300 започване на връзка и след това затваряне на връзка, същата идея. 752 00:41:48,300 --> 00:41:53,100 Как се резултатите на Google се завръща при мен? 753 00:41:53,100 --> 00:41:55,290 Каква е моята форма подаване на Google? 754 00:41:55,290 --> 00:41:58,160 Е, спомняте от онзи ден, че това, което наистина се случва 755 00:41:58,160 --> 00:42:02,150 под капака, когато поискате една уеб страница е, 756 00:42:02,150 --> 00:42:04,860 вашия браузър изпраща донякъде загадъчно съобщение като 757 00:42:04,860 --> 00:42:09,510 GET / HTTP/1.1 за начална страница по подразбиране. 758 00:42:09,510 --> 00:42:13,000 >> Или, в този случай, защото аз изрично поискани по-рано 759 00:42:13,000 --> 00:42:17,340 search0.html, това ще бъде малко по-загадъчно съобщение 760 00:42:17,340 --> 00:42:20,040 че навигаторът ми изпраща на уреда. 761 00:42:20,040 --> 00:42:23,090 Или, в този случай на Google, какво всъщност изпращат 762 00:42:23,090 --> 00:42:33,740 е искане / търсене, а след това? = мързелива котка, плюс има. 763 00:42:33,740 --> 00:42:36,790 Така че това съобщение, че аз, човек, никога не съм типичен, 764 00:42:36,790 --> 00:42:40,620 но се изпраща от браузъра си, това е как HTTP случва. 765 00:42:40,620 --> 00:42:43,240 Това е еквивалентът на нашите като здрависал. 766 00:42:43,240 --> 00:42:46,320 Това е искане, а сървърът е на път да изпрати отговор. 767 00:42:46,320 --> 00:42:48,560 Така че нека да погледнем под капака. 768 00:42:48,560 --> 00:42:55,320 Както и преди, ние може да отвори тази специална област в браузъра. 769 00:42:55,320 --> 00:42:58,720 Виж, да се запознаят елементи. 770 00:42:58,720 --> 00:43:01,550 Така под инспектира елемент, забележете, че това, което се е случило в Chrome, 771 00:43:01,550 --> 00:43:04,160 и IE и Firefox имат подобни механизми, 772 00:43:04,160 --> 00:43:07,370 имаме тези инструменти за разработчици, които са достъпни за нас. 773 00:43:07,370 --> 00:43:09,630 Нормалните хора не използвате тези раздели. 774 00:43:09,630 --> 00:43:11,940 Но ние, сега, се интересуват какво се случва 775 00:43:11,940 --> 00:43:13,890 под капака на мрежово ниво. 776 00:43:13,890 --> 00:43:16,130 Така че, ако аз извадя на ниво мрежа, 777 00:43:16,130 --> 00:43:18,510 нека вървим напред и да се разшири този прозорец, 778 00:43:18,510 --> 00:43:21,840 отвори този пост тук, и погледнете заглавията. 779 00:43:21,840 --> 00:43:26,010 Така че това, което се случва, когато поискате файл от уеб сървър 780 00:43:26,010 --> 00:43:29,410 е моя браузър изпраща цял куп неща. 781 00:43:29,410 --> 00:43:32,390 И нека ме видите източник. Така че, по заявка заглавията, 782 00:43:32,390 --> 00:43:35,250 И това е само Chrome ми показва някои диагностични изход, 783 00:43:35,250 --> 00:43:37,340 вид като дебъгер на някакъв вид, 784 00:43:37,340 --> 00:43:40,500 забележите, че това, което съм отбелязани тук е точно това, което 785 00:43:40,500 --> 00:43:47,060 Chrome изпраща на сървъра, за да поиска файл, наречен search0.html. 786 00:43:47,060 --> 00:43:50,160 Показателно е, сървър, това, което мисли, че името му е, 787 00:43:50,160 --> 00:43:52,210 благодарение на тази област домакин на дебелото черво, а след това има някои 788 00:43:52,210 --> 00:43:56,950 доста езотерично неща тук, като нещо общо с дати и часове, 789 00:43:56,950 --> 00:43:59,720 нещо общо с езиците, че браузърът разбира, 790 00:43:59,720 --> 00:44:02,850 но наистина важни линии са първите две тук. 791 00:44:02,850 --> 00:44:05,490 >> Какво сървъра отговори? Е, ако ние превъртете надолу тук 792 00:44:05,490 --> 00:44:08,510 и да видите източник на това нещо, обърнете внимание, че сървърът 793 00:44:08,510 --> 00:44:13,700 е отговорил с малко загадъчно съобщение, както и, не 304 променени. 794 00:44:13,700 --> 00:44:16,030 Това е малко странно, нека се опитаме да оправим това. 795 00:44:16,030 --> 00:44:18,670 Нека задръжте смени и кликнете презареди тук 796 00:44:18,670 --> 00:44:22,460 да накара браузъра, за да направи това искане за първи път. 797 00:44:22,460 --> 00:44:25,700 Тогава ми позволете да я увеличите, и ние ще видим, че отговора на сървъра, 798 00:44:25,700 --> 00:44:28,950 защото държах смяна, е 200 OK. 799 00:44:28,950 --> 00:44:31,170 Така че най-вероятно никога не сте виждали номер 200 800 00:44:31,170 --> 00:44:33,300 в контекста на интернет, но какви номера 801 00:44:33,300 --> 00:44:36,760 понякога се наблюдава неочаквано от сървър? 802 00:44:36,760 --> 00:44:42,010 404, файла не е намерен, 403, забранена, 500, грешка в сървъра. 803 00:44:42,010 --> 00:44:44,890 Така че там са тези цифровите кодове, че светът използва в уеб 804 00:44:44,890 --> 00:44:47,870 за да покаже грешки, само като функция на C 805 00:44:47,870 --> 00:44:51,030 може да се върне на грешки и да се върнете изходните кодове. 806 00:44:51,030 --> 00:44:54,160 200, макар и рядко, защото това означава, всичко е наред. 807 00:44:54,160 --> 00:44:59,000 А 304 вероятно никога няма да видите, защото това, което се показваше? 808 00:44:59,000 --> 00:45:03,330 Че нищо не е - нека да видим дали можем да симулира това отново - 809 00:45:03,330 --> 00:45:07,170 О, сега това не е сътрудничество. 304 каза, че не се променя, 810 00:45:07,170 --> 00:45:09,170 така че защо да е сървър, дори да отговарят? 811 00:45:09,170 --> 00:45:12,550 Е, за ефективност, уеб сървър автоматично за вас, 812 00:45:12,550 --> 00:45:16,570 ако файлът не се е променило, няма да препредава целия HTML файл. 813 00:45:16,570 --> 00:45:19,150 Тя просто ще каже на браузъра, че не се е променила. 814 00:45:19,150 --> 00:45:21,220 Просто използвайте вече имате копие. 815 00:45:21,220 --> 00:45:22,650 Така че това понятие за кеширане на уеб 816 00:45:22,650 --> 00:45:25,840 за изпълнение, така че не си губете време и трафик на отпадъците 817 00:45:25,840 --> 00:45:29,160 сваляне на файлове отново и отново ненужно. 818 00:45:29,160 --> 00:45:31,460 >> Но тази интернет страница, сега е супер просто, 819 00:45:31,460 --> 00:45:34,980 и то само ми показа HTML, която се върна. 820 00:45:34,980 --> 00:45:40,940 Нека всъщност използвайте раздела на мрежата сега, за да направи Google търсене като бързо кафява лисица. 821 00:45:40,940 --> 00:45:43,010 Нека след това щракнете върху CS50 търсене, 822 00:45:43,010 --> 00:45:46,950 и сега, забележете, в дъното тук един куп неща се върна 823 00:45:46,950 --> 00:45:49,900 , защото когато посетите сайт като Google.com, 824 00:45:49,900 --> 00:45:53,520 имат изображения, те имат текст, те имат език, наречен JavaScript там. 825 00:45:53,520 --> 00:45:55,940 Така че всеки ред в тази таблица тук 826 00:45:55,940 --> 00:46:01,490 представлява нещо, което Google плюе в отговор на единственото ми желание. 827 00:46:01,490 --> 00:46:04,160 Единственото, което ме интересува, обаче това е първият. 828 00:46:04,160 --> 00:46:08,420 И ако отида за търсене, заявка, кликнете видите изходния тук, 829 00:46:08,420 --> 00:46:11,300 забележите, че наистина загадъчно съобщение, че навигаторът ми изпрати 830 00:46:11,300 --> 00:46:15,010 да Google е тези две линии, 831 00:46:15,010 --> 00:46:18,420 последвано от някаква тайнствена информация тук, които ще игнорират за сега. 832 00:46:18,420 --> 00:46:20,890 Но забележете също, какво Chrome е доста удобен, 833 00:46:20,890 --> 00:46:24,540 тя също ми показа заявка низ, който е бил изпратен инча 834 00:46:24,540 --> 00:46:27,410 Така че вместо да ми покаже това, което буквално е изпратен, 835 00:46:27,410 --> 00:46:30,800 ако го видите декодира, Chrome, само за отстраняване на грешки, 836 00:46:30,800 --> 00:46:34,270 за разработчиците като нас, просто ми показа човека версия на 837 00:46:34,270 --> 00:46:36,390 това не е как се пише лисица, очевидно. 838 00:46:36,390 --> 00:46:40,520 Аз съм просто забележи това сега, но ви показва това, което, както изглежда, на пишеща машина. 839 00:46:40,520 --> 00:46:45,340 Междувременно, отговор, който се върна от сървъра отново е 200 OK. 840 00:46:45,340 --> 00:46:47,930 Но включени в този отговор, разбира се, 841 00:46:47,930 --> 00:46:51,920 ако ние всъщност преглед на HTML страницата - 842 00:46:51,920 --> 00:46:55,440 Съжалявам, но това е малко по-клавишна комбинация се проваля днес. 843 00:46:55,440 --> 00:46:59,020 >> Аз ще се оправя с това по-късно. Така че, ако ние всъщност Преглед на изходния код на страницата, 844 00:46:59,020 --> 00:47:02,990 което мога да направя тук, като щракнете на отговор, 845 00:47:02,990 --> 00:47:10,080 това е, което всъщност е плюе обратно, в допълнение на този загадъчен 200 OK съобщение от сървъра. 846 00:47:10,080 --> 00:47:12,520 Малко загадъчно, но къде е всичко това идва от? 847 00:47:12,520 --> 00:47:15,570 Е, нека да направим нещо друго тук. Друг малко по-загадъчен команда, 848 00:47:15,570 --> 00:47:20,530 но вид на чист в това, че ни разкрива точно какво се случва под капака. 849 00:47:20,530 --> 00:47:22,530 Така че аз съм тук, аз на моя Mac свързали 850 00:47:22,530 --> 00:47:25,980 чрез програма, наречена SSH Secure Shell, на друг сървър 851 00:47:25,980 --> 00:47:28,940 защото повечето компютри Харвард блокират команда ние сме на път да тече 852 00:47:28,940 --> 00:47:31,640 защото има тази команда за някои сървъри, наречени Traceroute 853 00:47:31,640 --> 00:47:34,810 , който ви позволява да се проследи пътя между точките "а" и "б, 854 00:47:34,810 --> 00:47:37,020 и до този момент сме се изцяло за даденост 855 00:47:37,020 --> 00:47:40,170 , че мога да пиша в Google.com и някак си данни за минали периоди 856 00:47:40,170 --> 00:47:43,530 от другия край на страната, или другия край на света. 857 00:47:43,530 --> 00:47:45,810 С Traceroute ние всъщност може да се потопите в малко по-дълбоко 858 00:47:45,810 --> 00:47:49,370 как работи интернет, и да видим какво се случва под капака. 859 00:47:49,370 --> 00:47:54,440 Така че нека да вървим напред и произволно проследи маршрута, да речем, Stanford.edu 860 00:47:54,440 --> 00:47:57,150 което е в цялата страна, и натиснете Enter. 861 00:47:57,150 --> 00:47:59,380 Тази команда може да бъде супер-бързо или супер-бавно, 862 00:47:59,380 --> 00:48:02,010 но това, което виждаме сега, ред по ред, 863 00:48:02,010 --> 00:48:08,060 е всеки един от стъпки или хмел между нас и Пало Алто, или Станфорд, 864 00:48:08,060 --> 00:48:11,010 , където те имат своите уеб сървър. 865 00:48:11,010 --> 00:48:16,600 Така че, какво прави всеки от тези редове представляват по-конкретно, нали? 866 00:48:16,600 --> 00:48:19,100 Парче на жаргон от интернет? [Student, неразбираем] 867 00:48:19,100 --> 00:48:21,570 >> Какво е това? [Student, неразбираем] 868 00:48:21,570 --> 00:48:25,390 >> О, така че има време, но какво прави всеки ред - какво имам предвид от хоп? 869 00:48:25,390 --> 00:48:29,140 >> Е, има тези неща в Интернет, наречени рутери. 870 00:48:29,140 --> 00:48:33,020 И рутери, както подсказва и името, информация за маршрута от точка А до точка Б. 871 00:48:33,020 --> 00:48:36,920 Но има няколко точки, които са извън а и б. 872 00:48:36,920 --> 00:48:40,010 Има в и г и д и е между ред 1, 873 00:48:40,010 --> 00:48:43,480 , който се случва да бъде IP адреса на моя компютър, 874 00:48:43,480 --> 00:48:46,890 или цифров адрес, който идентифицира компютъра ми, 875 00:48:46,890 --> 00:48:50,300 и стъпка 15, който всъщност е шестото уеб сървър, 876 00:48:50,300 --> 00:48:54,640 очевидно, което аз съм от това заключава, или 6-та версия на техния уеб сървър в Станфорд. 877 00:48:54,640 --> 00:48:56,680 Но това, което е вид на чист е, можем да видим пътя 878 00:48:56,680 --> 00:49:00,480 че ми 0 и 1, като от моя компютър в Станфорд. 879 00:49:00,480 --> 00:49:02,500 Така стъпка 1 е адрес на собствения си компютър. 880 00:49:02,500 --> 00:49:05,760 Всеки компютър в Интернет има уникален идентификатор, който изглежда така. 881 00:49:05,760 --> 00:49:08,150 Number.number.number.number. 882 00:49:08,150 --> 00:49:10,370 Някъде на този университет, вероятно в центъра на науката, 883 00:49:10,370 --> 00:49:16,780 рутер, наречена Core Gateway 2-te83, каквото и да означава, 884 00:49:16,780 --> 00:49:20,590 така че това е един от големите фантазия рутери Харвард, който маршрутизира много на техния трафик. 885 00:49:20,590 --> 00:49:24,640 Ето още един рутери Харвард, това е Border Gateway, 886 00:49:24,640 --> 00:49:28,310 границата означава, че вероятно някъде в периферията на колежа. 887 00:49:28,480 --> 00:49:32,790 Тогава там е NOx, ред 4, която е Северна Crossroads, 888 00:49:32,790 --> 00:49:35,070 което е голям Интернет доставчик, доставчик на интернет услуги, 889 00:49:35,070 --> 00:49:37,740 че места като Харвард свързване. 890 00:49:37,740 --> 00:49:40,760 Но тогава нещата стават малко интересно в ред 6. 891 00:49:40,760 --> 00:49:45,960 Къде са ми бита изведнъж? Канзас. 892 00:49:45,960 --> 00:49:49,300 В света има навика да се използват кодове на летища в много от тези неща, 893 00:49:49,300 --> 00:49:52,900 или най-малкото съкращения на държавите или градовете, 894 00:49:52,900 --> 00:49:56,490 така че изглежда, само в 60 държави-членки, 895 00:49:56,490 --> 00:49:59,420 пакет от информация, 0 и 1 е от моя лаптоп 896 00:49:59,420 --> 00:50:03,210 целия път до Канзас, и отново, в 60 държави-членки. 897 00:50:03,210 --> 00:50:08,180 >> Освен това, след Канзас, те взеха турне през Хюстън, вероятно, 898 00:50:08,180 --> 00:50:10,140 както бе предложено от името на този сървър. 899 00:50:10,140 --> 00:50:13,310 Така че просто като сървър в Интернет трябва да има цифров адрес, 900 00:50:13,310 --> 00:50:18,360 по желание, то също може да имат малко повече за човека, че хората дойдоха с адрес. 901 00:50:18,360 --> 00:50:20,510 Сега, в стъпка 8, ние не знаем какво е това. 902 00:50:20,510 --> 00:50:22,550 Понякога рутери просто се игнорират, 903 00:50:22,550 --> 00:50:25,010 и те просто не отговори на въпросите, така че това е добре. 904 00:50:25,010 --> 00:50:29,290 След стъпка 8 е очевидно, където? L.A. 905 00:50:29,290 --> 00:50:35,290 Забележете, само в 78 държави-членки, което ни хора като 6 + часа, за да извършваме физически, 906 00:50:35,290 --> 00:50:40,110 пакети от информация в интернет 78 мс да пътуват толкова далеч. 907 00:50:40,110 --> 00:50:45,890 Стъпка 10 е в Лос Анджелис, както и 11 изглежда да са отишли ​​на север, близо до Станфорд. 908 00:50:45,890 --> 00:50:48,750 Това е тяхната граница рутер или маршрутизатор граница. 909 00:50:48,750 --> 00:50:51,240 Няколко стъпки в Станфорд, които ни пренебрегват, 910 00:50:51,240 --> 00:50:55,610 и накрая, стигаме до уеб сървър само за 87 мс. 911 00:50:55,610 --> 00:50:57,760 Сега, всички тези числа, като освен, 912 00:50:57,760 --> 00:51:00,640 само да ви кажа, колко време е необходимо за пренос на данни, за да получите от мен 913 00:51:00,640 --> 00:51:03,530 за всеки един от тези рутери, и това не е набирателна. 914 00:51:03,530 --> 00:51:06,960 Какво прави тази програма е, че първо изпраща съобщение по същество, на първия маршрутизатор. 915 00:51:06,960 --> 00:51:09,490 Тогава на втория рутер, тогава един трети рутер, 916 00:51:09,490 --> 00:51:12,610 измерване всеки път. Така на теория, тези времена ще се разраства 917 00:51:12,610 --> 00:51:14,860 или най-малкото доста близо един до друг, 918 00:51:14,860 --> 00:51:18,090 и, наистина, тези, които са тук на територията на колежа са супер-малък. 919 00:51:18,090 --> 00:51:20,820 Веднага след като тръгват в цялата страна, тя отнема данни 920 00:51:20,820 --> 00:51:24,830 малко по-дълго, за да пътуват, близо до 100 милисекунди, даде или отнеме. 921 00:51:24,830 --> 00:51:28,330 Но нека да отидем в друга посока сега. Какво ще кажете за Кеймбриджкия университет във Великобритания? 922 00:51:28,330 --> 00:51:32,540 Нека вместо да тичам Traceroute на www.cam за Кеймбридж, 923 00:51:32,540 --> 00:51:36,710 AC за академично, Великобритания, и натиснете въведете тук. 924 00:51:36,710 --> 00:51:38,830 Това беше доста бързо. 925 00:51:38,830 --> 00:51:43,300 Моите данни буквално отиде в Кеймбридж, Англия, в тази частица от секундата от време. 926 00:51:43,300 --> 00:51:45,340 >> Така че нека да видим пътя, който го взе. 927 00:51:45,340 --> 00:51:47,520 Харвард, Харвард, Харвард, Северна Crossroads, 928 00:51:47,520 --> 00:51:52,690 , която е доставчик на интернет, а след това това е Северна Crossroads, и след това бам. 929 00:51:52,690 --> 00:51:58,320 Каква е между стъпки 6 и 7, рутер 6 и 7? 930 00:51:58,320 --> 00:52:02,040 Атлантическия океан. И ние сме се изведе от факта, че 931 00:52:02,040 --> 00:52:06,530 отидем от 20 мс тук до 80 мс. 932 00:52:06,530 --> 00:52:10,050 Така че нещо взе 60 мс, или да даде, за да получите повече. 933 00:52:10,050 --> 00:52:12,910 И това вероятно е бил голям воден. 934 00:52:12,910 --> 00:52:15,250 Какво става след това? Е, ние сме тук в Лондон, 935 00:52:15,250 --> 00:52:18,860 само 88 мс-късно. По-Лондон, Лондон, 936 00:52:18,860 --> 00:52:21,730 не сте сигурни къде е това, но ние ще приемем, че е извън Лондон, 937 00:52:21,730 --> 00:52:26,390 Кеймбридж тук, и ние най-накрая - буквално, Университета в Кеймбридж 938 00:52:26,390 --> 00:52:29,500 . Something.net, и най-накрая, на ред 16, 939 00:52:29,500 --> 00:52:31,720 техния уеб сървър е очевидно Scorpius 940 00:52:31,720 --> 00:52:35,500 под предния капак, въпреки че го знаем като WWW. 941 00:52:35,500 --> 00:52:38,790 Вид на ума-разпенващ, мисля. Първи път, което някога съм правил това, то напълно взривиха съзнанието ми. 942 00:52:38,790 --> 00:52:41,670 За съжаление, Харвард блокира този вид трафик, обикновено в мрежата. 943 00:52:41,670 --> 00:52:44,340 Така че не може да го направи супер лесно. 944 00:52:44,340 --> 00:52:48,500 Осъзнайте, все пак, това тук е възможно. 945 00:52:48,500 --> 00:52:53,630 Добре. Нека вземем нашата 5-минутна почивка тук. Ще се върнем и да се потопите още по-дълбоко. 946 00:52:53,630 --> 00:53:00,850 Така че ние сме назад, и ние сме вид, без да бърза, за тук в няколко различни посоки. 947 00:53:00,850 --> 00:53:03,700 Така че нека да обобщим какво точно става тук. 948 00:53:03,700 --> 00:53:07,990 Ние започнахме разговора, да говорим за този език, наречен HTML. 949 00:53:07,990 --> 00:53:10,680 Отново, не е език за програмиране. Това е просто един език за маркиране 950 00:53:10,680 --> 00:53:15,490 , която е до голяма степен за естетика и структуриране на съдържанието под формата на уеб страница. 951 00:53:15,490 --> 00:53:19,220 Но HTML, следователно, се нуждае от някакъв механизъм 952 00:53:19,220 --> 00:53:22,870 за пътуване между уеб браузър и сървъра. 953 00:53:22,870 --> 00:53:28,360 HTML следователно вид вози на върха на този друг език, 954 00:53:28,360 --> 00:53:31,280 или по-правилно, протокол, известен като HTTP. 955 00:53:31,280 --> 00:53:33,730 >> И HTTP, както сме го виждали до този момент, 956 00:53:33,730 --> 00:53:37,140 е един вид аналогична на тази конвенция на човека се ръкува. 957 00:53:37,140 --> 00:53:39,940 Когато браузър иска да поискат страница от сървъра, 958 00:53:39,940 --> 00:53:43,450 го изпраща искане "да" от браузъра към сървъра, 959 00:53:43,450 --> 00:53:48,040 и след това сървъра отговаря с номер като 200, всичко е наред, 960 00:53:48,040 --> 00:53:53,290 , както и като HTML или някакъв лош номер като 404, не бе намерен файл. 961 00:53:53,290 --> 00:53:58,220 Но междувременно, HTTP себе си не е в интернет, на себе си. 962 00:53:58,220 --> 00:54:01,550 HTTP е просто услуга, функция на интернет 963 00:54:01,550 --> 00:54:05,530 много като G чат е друга услуга, много прилича имейл е друга услуга. 964 00:54:05,530 --> 00:54:09,180 Има всякакви неща, които можем да направим в интернет. 965 00:54:09,180 --> 00:54:12,670 HTTP е само един от тези заявления. 966 00:54:12,670 --> 00:54:17,210 Така на върха на HTTP е на върха на нещо друго 967 00:54:17,210 --> 00:54:21,750 които не се споменава по име, може би сте чували по име, TCP / IP. 968 00:54:21,750 --> 00:54:25,160 Така че историята, която току-що каза, че е за всички 969 00:54:25,160 --> 00:54:28,720 как данните пътува от точка А до точка Б. 970 00:54:28,720 --> 00:54:30,950 И в този случай, ние видяхме на много ниско ниво 971 00:54:30,950 --> 00:54:33,060 рутер към рутера към рутера към рутера, 972 00:54:33,060 --> 00:54:35,390 как действително се предават данни. 973 00:54:35,390 --> 00:54:40,510 Но по пътя, ще се сблъскват с различни пречки. 974 00:54:40,510 --> 00:54:43,770 Освен тези рутери, има неща, наречени защитни стени в интернет, 975 00:54:43,770 --> 00:54:46,680 и така данни, като бяхме просто предаване 976 00:54:46,680 --> 00:54:49,720 от мен в Станфорд, от мен в Кеймбридж, 977 00:54:49,720 --> 00:54:54,560 се изпраща на това ниво, нещо, наречено IP адрес. 978 00:54:54,560 --> 00:54:57,340 Ние видяхме това преди малко, и IP адрес 979 00:54:57,340 --> 00:55:02,480 е просто цифров адрес на формуляра w.x.y.z, 980 00:55:02,480 --> 00:55:08,070 , където всеки от тях е между тях, или да даде, 0 и 255, 981 00:55:08,070 --> 00:55:10,080 макар че съвсем не могат да използват всички тези номера. 982 00:55:10,080 --> 00:55:14,220 Но всеки от тези притежатели на място е число между 0 и 255. 983 00:55:14,220 --> 00:55:16,820 Така че IP адрес тези дни е 32 бита. 984 00:55:16,820 --> 00:55:20,780 >> Сега, това ни дава колко е възможно адреси в света? 985 00:55:20,780 --> 00:55:24,420 Около 4 млрд. евро, защото всеки път, когато броя в правомощията на две 986 00:55:24,420 --> 00:55:27,760 по целия път до 32 на нещо, което обикновено ни дава 4 млрд. евро. 987 00:55:27,760 --> 00:55:30,160 Така че това е много IP адреси, но може да сте прочели, 988 00:55:30,160 --> 00:55:32,410 или може да забележите в популярната преса, 989 00:55:32,410 --> 00:55:36,020 тласък към нова версия на IP, наречен IPv6. 990 00:55:36,020 --> 00:55:38,290 В момента се използва версия 4. 991 00:55:38,290 --> 00:55:41,060 Там наистина не е версия 5, ние просто скача до 6. 992 00:55:41,060 --> 00:55:46,760 Версия 6 ще използва 128 бита за IP адреси, които се възбуждате огромен. 993 00:55:46,760 --> 00:55:49,430 Ние не би трябвало да работи за известно време сега, 994 00:55:49,430 --> 00:55:52,980 но е започнал да тече от IP адреси версия 4, 995 00:55:52,980 --> 00:55:56,110 защото всички ние имаме не само неща като лаптопи и настолни компютри, 996 00:55:56,110 --> 00:55:58,700 много от нас имат телефони, много от нас имат и други устройства 997 00:55:58,700 --> 00:56:01,600 като TiVo и други подобни, които имат IP адреси. 998 00:56:01,600 --> 00:56:03,720 Харвард себе си има десетки хиляди компютри. 999 00:56:03,720 --> 00:56:07,970 Така светът действително изтича на IP адреси, поне на този формуляр. 1000 00:56:07,970 --> 00:56:10,340 Така че през следващите няколко години, вие ще да видите адресите 1001 00:56:10,340 --> 00:56:12,870 на собствените си компютри вероятно бавно се променят 1002 00:56:12,870 --> 00:56:16,740 тъй като все повече и повече компании и университети започват да подкрепят по-нова версия. 1003 00:56:16,740 --> 00:56:22,770 Но един IP адрес не е достатъчно за компютър да поиска данни от компютъра б. 1004 00:56:22,770 --> 00:56:24,950 Тъй като компютър б може да бъде сървър, 1005 00:56:24,950 --> 00:56:27,600 и сървър, както споменах по-рано, може да направи букети неща. 1006 00:56:27,600 --> 00:56:29,940 Тя може да бъде домакин на уеб страници, може да бъде сървър за електронна поща, 1007 00:56:29,940 --> 00:56:32,310 тя може да бъде Skype сървър, може да бъде чат G сървър. 1008 00:56:32,310 --> 00:56:35,870 >> Всички тези различни услуги, които могат да бъдат предоставени на предприятието на сървъра 1009 00:56:35,870 --> 00:56:38,330 всички физически, да бъдат на една и съща машина. 1010 00:56:38,330 --> 00:56:40,380 Така че, в допълнение към IP адреси, 1011 00:56:40,380 --> 00:56:43,250 света има неща, наречени пристанищата в интернет. 1012 00:56:43,250 --> 00:56:47,830 Порт е само един номер, така че има уникален номер за HTTP. 1013 00:56:47,830 --> 00:56:50,280 Неговият номер е 80. 1014 00:56:50,280 --> 00:56:55,870 HTTP също използва номер 443, но по-специално, за криптирана HTTPS. 1015 00:56:55,870 --> 00:57:00,030 Когато видите S, за сигурна, че използва различен номер. 1016 00:57:00,030 --> 00:57:06,580 Има други числа като 25, които се използват за нещо, което се нарича SMTP, иначе известни като имейл. 1017 00:57:06,580 --> 00:57:09,620 Има нещо, което се нарича 22 за SSH, 1018 00:57:09,620 --> 00:57:11,850 и там има цял куп други пристанища. 1019 00:57:11,850 --> 00:57:14,460 Сега, ние, хората рядко виждат тези номера. 1020 00:57:14,460 --> 00:57:21,970 Въпреки това, когато напишете адрес като http://www.facebook.com 1021 00:57:21,970 --> 00:57:26,560 браузъра е тайно вмъкване на 80, защото използвате HTTP. 1022 00:57:26,560 --> 00:57:30,630 Ако, вместо тип HTTPS, е тайно вмъкване 443. 1023 00:57:30,630 --> 00:57:35,180 И ние да видите това ръчно, ако извадя на браузъра 1024 00:57:35,180 --> 00:57:41,850 и си отиват до http://www.facebook.com:80. 1025 00:57:41,850 --> 00:57:44,550 Затова категорично не се цитира само името на сайта 1026 00:57:44,550 --> 00:57:47,650 но порт, който искам да говоря, и натиснете Enter. 1027 00:57:47,650 --> 00:57:50,170 Забележете, тя изчезва, защото браузъра предполага, 1028 00:57:50,170 --> 00:57:53,360 о, 80, аз не съм дори да се притеснява да показва, че за вас. 1029 00:57:53,360 --> 00:57:56,400 Но причината за това е, че ако наистина иска да изпрати някой имейл, 1030 00:57:56,400 --> 00:58:02,340 Наистина бих се изпращат ги на порт 25, че SMTP. 1031 00:58:02,340 --> 00:58:04,890 Малко прекалено опростяване, но някои от вас имат приятели 1032 00:58:04,890 --> 00:58:09,290 , които действително работят в Facebook, и те, също така, има сървъри, които получават имейл. 1033 00:58:09,290 --> 00:58:12,610 >> Всеки път, когато изпращате имейл, какво Gmail прави за вас 1034 00:58:12,610 --> 00:58:14,960 или Outlook или каквото програмата, която използвате, 1035 00:58:14,960 --> 00:58:19,270 тя е нещо тайно да поставите този брой, както и 25, в този случай. 1036 00:58:19,270 --> 00:58:24,490 Това е тази комбинация от IP адрес и номер, който идентифицира еднозначно 1037 00:58:24,490 --> 00:58:29,190 компютър в Интернет и конкретна услуга на този компютър. 1038 00:58:29,190 --> 00:58:33,460 Сега, разбира се, повечето от нас вероятно никога не са въвели ръчно IP адрес. 1039 00:58:33,460 --> 00:58:37,340 Може би имате в уреда, но в реалния свят, не толкова много. 1040 00:58:37,340 --> 00:58:42,750 Защо не напишете IP адресите в браузъри? 1041 00:58:42,750 --> 00:58:45,860 Тя ще работи в действителност, можем да видим, нека да ви покажа 1042 00:58:45,860 --> 00:58:50,000 една друга команда, която трябва да работи навсякъде на територията на колежа Харвард на Mac или PC. 1043 00:58:50,000 --> 00:58:53,970 Тази команда, наречена nslookup, името на сървъра справка. 1044 00:58:53,970 --> 00:58:59,960 Ако гледам www.cnn.com, се оказва, че CNN има - О, интересно. 1045 00:58:59,960 --> 00:59:03,180 CNN започна да използва Amazon Web Services. 1046 00:59:03,180 --> 00:59:06,380 Може би знаете, на изчислителни облаци, Amazon е един от големите играчи в облачния компютинг. 1047 00:59:06,380 --> 00:59:10,240 Това, което току-що направих, беше, аз казах: "Дай ми адреса на уеб сървъра на CNN" 1048 00:59:10,240 --> 00:59:14,090 но се оказва, че Си Ен Ен уеб сървъра се управлява от Amazon, 1049 00:59:14,090 --> 00:59:16,030 Amazon Web Services, това предполага. 1050 00:59:16,030 --> 00:59:19,680 И адреса на този сървър е това тук. 1051 00:59:19,680 --> 00:59:22,350 Така че аз не съм сигурен дали това ще работи, защото те не са свикнали да използват Amazon. 1052 00:59:22,350 --> 00:59:32,830 Но нека се опитаме това; http://, IP адрес, въведете и - 1053 00:59:32,830 --> 00:59:35,690 ще се получи? 1054 00:59:35,690 --> 00:59:39,280 Да. Тя ще работи. Интернет е супер-бавен днес. 1055 00:59:39,280 --> 00:59:43,680 Но в един момент, ще видите някои новина. 1056 00:59:43,680 --> 00:59:48,360 Точно така. Банката на Америка да бъдат съдени. Добре. 1057 00:59:48,360 --> 00:59:54,000 >> Това е, защото това IP адрес просто се случва от синоним на www.cnn.com. 1058 00:59:54,000 --> 00:59:59,920 Разбира се, би било ужасно за пускане на пазара да се каже, посетете ни в мрежата на 50.112.94.127. 1059 00:59:59,920 --> 01:00:02,370 Никога няма да си спомня. Така че дори и тези дни можете да си спомните неща 1060 01:00:02,370 --> 01:00:07,210 като 1-800-COLLECT или мнемоника свят дойдоха с телефонни номера. 1061 01:00:07,210 --> 01:00:09,540 , Които преди мобилни телефони, са по-скоро трудно да се запомнят 1062 01:00:09,540 --> 01:00:11,800 , докато можете да го напишете и да забравите за нея. 1063 01:00:11,800 --> 01:00:15,730 Така че в Интернет, също има тази конвенция на имената и IP адресите, 1064 01:00:15,730 --> 01:00:17,770 и там са тези неща там, наречен DNS сървъри, 1065 01:00:17,770 --> 01:00:23,870 системи за имена на домейни, сървъри,, които превръщат IP адресите в имена и обратно. 1066 01:00:23,870 --> 01:00:26,340 Така че това, което се случва под капака. 1067 01:00:26,340 --> 01:00:29,540 В края на краищата, ние имаме TCP / IP, който е този протокол от ниско ниво 1068 01:00:29,540 --> 01:00:32,570 че, наистина, просто получава 0 и 1 в интернет, 1069 01:00:32,570 --> 01:00:36,030 и го прави така, като ги постави в един виртуален пакет, 1070 01:00:36,030 --> 01:00:38,820 ако щете, и писане от външната страна на плика 1071 01:00:38,820 --> 01:00:43,930 IP адреса на дестинацията, както и цифров номер на порт 1072 01:00:43,930 --> 01:00:47,520 на услугата по тази дестинация, че иска да говори с. 1073 01:00:47,520 --> 01:00:51,060 Междувременно, в плика има и нещо, известно като обратен адрес, 1074 01:00:51,060 --> 01:00:55,600 е вашият IP адрес, така че когато CNN получава пакет информация от вас, 1075 01:00:55,600 --> 01:00:58,710 отваря този виртуален пакет, вижда, че искате началната страница, 1076 01:00:58,710 --> 01:01:04,630 знае от подателя част от този виртуален пакет, които да изпратите HTML обратно към. 1077 01:01:04,630 --> 01:01:07,470 Така че нека да погледнем на това в малко по-подробно. 1078 01:01:07,470 --> 01:01:11,370 Това е от една компания, наречена Ericson, от няколко години назад. 1079 01:01:11,370 --> 01:01:14,780 И те си взеха някои свободи как всъщност работи интернет, 1080 01:01:14,780 --> 01:01:18,920 но тя рисува много по-визуална картина от обикновен тебешир тук. 1081 01:01:18,920 --> 01:01:26,690 Така че аз ви давам "A Bit на Интернет." 1082 01:02:26,660 --> 01:02:29,840 >> [Разказвач] За първи път в историята, 1083 01:02:29,840 --> 01:02:35,260 хора и машини работят заедно, реализирането на една мечта. 1084 01:02:35,260 --> 01:02:38,910 Обединяваща сила, която не познава географски граници. 1085 01:02:38,910 --> 01:02:43,230 Без оглед на раса, вероизповедание или цвят. 1086 01:02:43,230 --> 01:02:47,770 Нова ера, където комуникацията наистина обединява хората. 1087 01:02:47,770 --> 01:02:50,070 Това е 1088 01:02:50,070 --> 01:02:54,980 В зората на мрежата. 1089 01:02:54,980 --> 01:03:04,640 Искате ли да знаете как става това? Щракнете тук, за да започне пътуването си в мрежата. 1090 01:03:04,640 --> 01:03:07,890 Сега, какво точно се е случило, когато сте кликнали върху този линк? 1091 01:03:07,890 --> 01:03:10,150 Ти започна поток от информация. 1092 01:03:10,150 --> 01:03:13,310 Тази информация се движи в личен Mailroom 1093 01:03:13,310 --> 01:03:18,500 където г-н IP пакети, етикети, и го изпраща по пътя си. 1094 01:03:18,500 --> 01:03:20,960 Всеки пакет е ограничена по своя размер. 1095 01:03:20,960 --> 01:03:23,880 Стая поща трябва да реши как да раздели информацията 1096 01:03:23,880 --> 01:03:26,070 и как да го пакет. 1097 01:03:26,070 --> 01:03:29,550 Сега, пакетът се нуждае от етикет, съдържащ важна информация 1098 01:03:29,550 --> 01:03:35,570 като адреса на подателя, адрес на получателя, както и вида на пакета е. 1099 01:03:51,700 --> 01:03:54,980 Тъй като този пакет ще излезе в интернет, 1100 01:03:54,980 --> 01:03:57,720 то получава и адрес за прокси сървър, 1101 01:03:57,720 --> 01:04:01,520 който има специална функция, както ще видим по-късно. 1102 01:04:01,520 --> 01:04:06,650 Пакетът е сега стартира към вашата локална мрежа или LAN. 1103 01:04:06,650 --> 01:04:10,160 Тази мрежа се използва за свързване на всички локални компютри " 1104 01:04:10,160 --> 01:04:15,900 рутери, принтери, и така нататък, за обмен на информация в рамките на физическите стени на сградата. 1105 01:04:15,900 --> 01:04:20,290 LAN е доста неконтролирано място, и, за съжаление, 1106 01:04:20,290 --> 01:04:23,950 произшествия може да се случи. 1107 01:04:31,190 --> 01:04:34,710 Магистрала на LAN е натъпкан с всички видове информация. 1108 01:04:34,710 --> 01:04:38,900 Това са IP пакети, Novell пакети, AppleTalk пакети. 1109 01:04:38,900 --> 01:04:41,270 Те ще срещу трафика, както обикновено. 1110 01:04:41,270 --> 01:04:44,260 Местната рутер чете адрес и, ако е необходимо, 1111 01:04:44,260 --> 01:04:48,520 повдига пакет към друга мрежа. 1112 01:04:48,520 --> 01:04:54,270 Ах, рутера. Символ на контрол в привидно по-дезорганизиран свят. 1113 01:04:54,270 --> 01:05:05,480 [Router мънкане и говори за себе си] 1114 01:05:05,480 --> 01:05:10,030 >> [Разказвач] Има той е систематичен, незаинтересовани, методичен, 1115 01:05:10,030 --> 01:05:14,150 консервативна, а понякога и не съвсем да се ускори. 1116 01:05:14,150 --> 01:05:17,680 Но поне е точна, по-голямата част. 1117 01:05:32,270 --> 01:05:36,820 Тъй като пакетите напускат рутера, те да си проправят път в корпоративната интернет 1118 01:05:36,820 --> 01:05:40,830 и главата ключа за рутера. 1119 01:05:40,830 --> 01:05:46,250 Малко по-ефективно, отколкото на рутера, на рутера превключвател играе бързо и в насипно състояние с IP пакети, 1120 01:05:46,250 --> 01:05:48,920 ловко ги маршрута по пътя си. 1121 01:05:48,920 --> 01:05:52,130 Цифров "пинбол съветника," ако щете. 1122 01:05:52,130 --> 01:06:04,270 [Router превключвател, говори за себе си] 1123 01:06:09,830 --> 01:06:12,150 [Разказвач] Както пакетите пристигнат в тяхното местоназначение, 1124 01:06:12,150 --> 01:06:14,740 те се качват от мрежов интерфейс, 1125 01:06:14,740 --> 01:06:18,040 готов да бъде изпратен към следващото ниво. 1126 01:06:18,040 --> 01:06:21,010 В този случай пълномощникът. 1127 01:06:21,010 --> 01:06:25,040 Пълномощникът се използва от много компании като вид на средата човек 1128 01:06:25,040 --> 01:06:27,630 за да се намали натоварването на интернет връзката 1129 01:06:27,630 --> 01:06:32,240 и от съображения за сигурност, както добре. 1130 01:06:32,240 --> 01:06:38,750 Както можете да видите, пакетите са с различни размери, в зависимост от тяхното съдържание. 1131 01:06:55,210 --> 01:07:01,890 Пълномощникът отваря пакета и търси уеб адрес или URL. 1132 01:07:01,890 --> 01:07:04,950 В зависимост от това дали адреса е приемливо, 1133 01:07:04,950 --> 01:07:08,000 пакет се изпраща в интернет. 1134 01:07:13,890 --> 01:07:19,630 Има, обаче, някои адреси, които не отговарят с одобрението на пълномощника. 1135 01:07:19,630 --> 01:07:25,680 Това е да се каже, корпоративни или управление насоки. 1136 01:07:25,680 --> 01:07:30,580 Те са безцеремонно. 1137 01:07:30,580 --> 01:07:32,410 Ще трябва нищо от това. 1138 01:07:32,410 --> 01:07:36,350 За тези, които го правят, то е на път отново. 1139 01:07:46,850 --> 01:07:53,310 >> Следващата, защитната стена. 1140 01:07:53,310 --> 01:07:57,410 Корпоративната защитна стена има две цели. 1141 01:07:57,410 --> 01:08:02,420 Това пречи на някои доста гадни неща от интернет от влизането в интранет 1142 01:08:02,420 --> 01:08:10,280 и той може да предотврати поверителна корпоративна информация да бъдат изпратени към Интернет. 1143 01:08:10,280 --> 01:08:12,980 След като през защитната стена, рутер взима пакета 1144 01:08:12,980 --> 01:08:18,180 и го поставя върху много по-тесен път, или лента, както казваме ние. 1145 01:08:18,180 --> 01:08:23,720 Очевидно е, че пътят не е достатъчно широко, за да ги взема. 1146 01:08:23,720 --> 01:08:29,319 Сега, може би се чудите какво се случва с всички тези пакети, които не го правят по протежение на пътя. 1147 01:08:29,319 --> 01:08:32,270 Е, когато г-н IP не получи потвърждение 1148 01:08:32,270 --> 01:08:35,000 , че пакетът е получено своевременно, 1149 01:08:35,000 --> 01:08:39,890 той просто изпраща заместващ пакет. 1150 01:08:39,890 --> 01:08:44,760 Вече сме готови да влязат в света на интернет. 1151 01:08:44,760 --> 01:08:49,370 Паяжина на взаимосвързаните мрежи, които обхващат цялото земно кълбо. 1152 01:08:49,370 --> 01:08:56,050 Ето, маршрутизатори и комутатори, създаване на връзки между мрежите. 1153 01:08:56,050 --> 01:08:59,200 Сега, Net е напълно различна среда, отколкото ще намерите 1154 01:08:59,200 --> 01:09:01,569 в рамките на защитните стени на вашата локална мрежа. 1155 01:09:01,569 --> 01:09:04,060 Няма тук, това е Дивия Запад. 1156 01:09:04,060 --> 01:09:06,359 Изобилие от пространство, изобилие от възможности, 1157 01:09:06,359 --> 01:09:09,760 много неща, които трябва да се изследват и места, за да отида. 1158 01:09:09,760 --> 01:09:12,760 Благодарение на много малко контрол и регулиране, 1159 01:09:12,760 --> 01:09:18,300 нови идеи намират плодородна почва, за да се разкрия на възможностите им. 1160 01:09:18,300 --> 01:09:22,330 Но тъй като на тази свобода, някои опасности се крият. 1161 01:09:22,330 --> 01:09:27,000 Ще никога не знаете кога ще се срещнем страховитите пинг на смъртта, 1162 01:09:27,000 --> 01:09:29,890 специална версия на нормален пинг искане, 1163 01:09:29,890 --> 01:09:35,720 която някой идиот, че да се забъркваш нищо неподозиращите домакините. 1164 01:09:35,720 --> 01:09:39,130 Пътят нашите пакети вземе може да бъде чрез сателит, 1165 01:09:39,130 --> 01:09:43,090 телефонни линии, безжична или дори презокеански кабели. 1166 01:09:43,090 --> 01:09:46,520 Те не винаги вземат възможно най-бързо или най-кратки маршрути, 1167 01:09:46,520 --> 01:09:50,290 но те в крайна сметка ще стигнем до там. 1168 01:09:50,290 --> 01:09:55,230 Може би затова понякога се нарича "World Wide Чакай". 1169 01:09:55,230 --> 01:09:57,980 Но когато всичко работи гладко, 1170 01:09:57,980 --> 01:10:03,800 можете да заобиколи света пет пъти в капка шапка, буквално. 1171 01:10:03,800 --> 01:10:08,230 И всичко това за цената на един градски разговор или по-малко. 1172 01:10:08,230 --> 01:10:15,070 До края на нашата дестинация, ще намерим друга защитна стена. 1173 01:10:15,070 --> 01:10:18,420 >> В зависимост от вашата гледна точка като за пакети данни, 1174 01:10:18,420 --> 01:10:23,730 защитната стена може да бъде бастион на сигурността или страховитите противник. 1175 01:10:23,730 --> 01:10:28,530 Всичко зависи от това от коя страна сте и какви са вашите намерения. 1176 01:10:28,530 --> 01:10:34,990 Защитната стена е проектиран да само онези пакети, които отговарят на неговите критерии. 1177 01:10:34,990 --> 01:10:39,360 Тази защитна стена работи на портове 80 и 25. 1178 01:10:39,360 --> 01:10:46,630 Всички опити да проникват през други пристанища са затворени за бизнеса. 1179 01:10:57,660 --> 01:11:03,480 Порт 25 се използва за пощенски пакети, 1180 01:11:03,480 --> 01:11:10,720 докато порт 80 е входът за пакети от Интернет с уеб сървъра. 1181 01:11:10,720 --> 01:11:15,080 Вътре в защитната стена, пакетите, се изследват по-задълбочено. 1182 01:11:15,080 --> 01:11:17,970 Някои пакети го правят лесно през митницата, 1183 01:11:17,970 --> 01:11:21,420 докато други изглежда само малко съмнително. 1184 01:11:21,420 --> 01:11:24,060 Сега служителят, защитната стена не е лесно заблуждавайте, 1185 01:11:24,060 --> 01:11:32,120 като когато това пинг на смърт пакет се опитва да се дегизира като нормален пакет пинг. 1186 01:11:32,120 --> 01:11:37,520 [Firewall служител, който говори за опаковките] 1187 01:11:37,520 --> 01:11:40,510 [Разказвач] За тези пакети, които са достатъчно късмет, за да го направи толкова далеч, 1188 01:11:40,510 --> 01:11:45,730 пътуването е почти към края си. 1189 01:11:45,730 --> 01:11:52,130 Това е просто една линия на интерфейса, които трябва да бъдат предприети в уеб сървър. 1190 01:11:52,130 --> 01:11:55,440 Днес, уеб сървър може да работи на много неща, 1191 01:11:55,440 --> 01:11:59,230 от мейнфрейм уеб камера към компютъра на бюрото си. 1192 01:11:59,230 --> 01:12:01,720 Защо не си хладилник? 1193 01:12:01,720 --> 01:12:04,870 С правилна настройка, можете да разберете дали имате заложби 1194 01:12:04,870 --> 01:12:08,390 Пиле Cacciatore, или ако имате да пазаруват. 1195 01:12:08,390 --> 01:12:11,760 Не забравяйте, че това е зората на Net. 1196 01:12:11,760 --> 01:12:17,310 Почти всичко е възможно. 1197 01:12:17,310 --> 01:12:20,440 Един по един, пакетите се получават, 1198 01:12:20,440 --> 01:12:26,320 се отвори и разопаковани. 1199 01:12:26,320 --> 01:12:31,200 Информацията, която се съдържа в тях, че е искането си за предоставяне на информация, 1200 01:12:31,200 --> 01:12:34,830 се изпраща на уеб сървъра заявление. 1201 01:12:41,540 --> 01:12:47,140 Самият пакет е рециклирана, 1202 01:12:47,140 --> 01:12:57,570 готови да бъдат използвани отново и да се запълнят с исканата информация, 1203 01:12:57,570 --> 01:13:03,340 адресирани и изпратени по пътя си обратно към вас. 1204 01:13:03,340 --> 01:13:13,250 Обратно миналото защитна стена, рутери и чрез интернет. 1205 01:13:13,250 --> 01:13:21,020 Обратно през корпоративната защитна стена 1206 01:13:21,020 --> 01:13:24,180 и на вашия интерфейс, 1207 01:13:24,180 --> 01:13:31,180 готов да предостави своя уеб браузър с поисканата от вас информация. 1208 01:13:31,180 --> 01:13:39,840 Това означава, че този филм. 1209 01:13:39,840 --> 01:13:43,550 Доволни от усилията си, доверявайки се на по-добър свят, 1210 01:13:43,550 --> 01:13:50,250 нашите пакети надежден данни вози блажено в залеза на още един ден, 1211 01:13:50,250 --> 01:13:56,880 знаейки, напълно те са служили добре техните господари. 1212 01:13:56,880 --> 01:14:02,560 Сега, не е, че има щастлив край? 1213 01:14:02,560 --> 01:14:07,040 [Малан Добре, това е достатъчно. Ще се видим следващата седмица. 1214 01:14:07,040 --> 01:14:10,040 [CS50.TV]