1 00:00:00,000 --> 00:00:00,200 2 00:00:00,200 --> 00:00:02,280 >> SPEAKER 1: Добре, и какво от това е ли конкретно трябва да се направи? 3 00:00:02,280 --> 00:00:04,140 Е, оказва се, че има Само за четири функции 4 00:00:04,140 --> 00:00:06,390 които трябва да се прилагат чиято функционалност е 5 00:00:06,390 --> 00:00:08,520 неразделна с правилното операция на уеб сървър, 6 00:00:08,520 --> 00:00:10,720 но всички чиято поведение е много тясно 7 00:00:10,720 --> 00:00:13,104 определени, така че само те направя почти едно нещо. 8 00:00:13,104 --> 00:00:15,270 Първото нещо, което ти започваш да трябва да направите, е прилагане, 9 00:00:15,270 --> 00:00:17,540 на спецификацията, функцията търсене. 10 00:00:17,540 --> 00:00:20,900 Това е доста проста функция в края, който взема като аргумент 11 00:00:20,900 --> 00:00:24,690 независимо от пътя до файла че потребителят иска да поиска, 12 00:00:24,690 --> 00:00:28,310 и трябва да реагира с т.нар MIME тип, или Content тип, 13 00:00:28,310 --> 00:00:29,200 на този файл. 14 00:00:29,200 --> 00:00:31,415 Така например, ако това е файл като, здравей дот 15 00:00:31,415 --> 00:00:37,470 HTML ти започваш да се отговори с MIME тип цитат цитата текст наклонена черта HTML. 16 00:00:37,470 --> 00:00:40,920 >> Или ако това е изображение, може да искате да отговори с изображение дот наклонена черта 17 00:00:40,920 --> 00:00:42,990 Миг или изображение наклонена черта JPEG. 18 00:00:42,990 --> 00:00:46,280 Вижте спецификацията на различните файлови формати, които трябва да се открие. 19 00:00:46,280 --> 00:00:49,760 Но тя наистина се свежда до вземането на Посетете пътя, че сте минали, 20 00:00:49,760 --> 00:00:52,870 и погледнете в своя файл разширение, последните символи 21 00:00:52,870 --> 00:00:54,297 след периода изоставаше или точка. 22 00:00:54,297 --> 00:00:57,130 Така че ние ще го оставя на вас с някои на съветите в спецификацията 23 00:00:57,130 --> 00:01:00,170 да разбера как точно да се намери че точка и разширението на файла 24 00:01:00,170 --> 00:01:02,840 така че можете да направите картографиране от единия към другия. 25 00:01:02,840 --> 00:01:04,395 >> Следващата е функцията за разбор. 26 00:01:04,395 --> 00:01:06,270 Така че това е малко по-ангажирани, в които 27 00:01:06,270 --> 00:01:08,590 трябва да се вземат в тази аргумент [недоловим], 28 00:01:08,590 --> 00:01:12,030 това е повторен над него, характер за характера, или низ от низ, 29 00:01:12,030 --> 00:01:14,660 , за да се уверите, че тя отговаря точно 30 00:01:14,660 --> 00:01:19,155 формалното определение за тази първа искане линия, според спецификацията. 31 00:01:19,155 --> 00:01:23,930 И трябва да се зареди в абсолютна пътека, която подниз, който представлява 32 00:01:23,930 --> 00:01:26,550 нещо подобно, наклонена черта здравей дот HTML. 33 00:01:26,550 --> 00:01:29,960 В същото време, по избор, след това път може да е под въпрос 34 00:01:29,960 --> 00:01:32,240 и след низ заявка харесват, р е равно на котки, 35 00:01:32,240 --> 00:01:35,310 или р е равно на котки амперсанд, и после още една двойка ключове стойност. 36 00:01:35,310 --> 00:01:38,380 Така че ти започваш да се наложи да прекрача тези знаци, 37 00:01:38,380 --> 00:01:41,150 както и, чак до Първият пространство, с цел 38 00:01:41,150 --> 00:01:47,327 да създадете низ, който магазина вътре в него самия низ заявка. 39 00:01:47,327 --> 00:01:49,410 На следващо място, ти започваш да се изпълнение на функцията за натоварване. 40 00:01:49,410 --> 00:01:52,493 Така се оказва, ако погледнете през изходния код, като спец насочва, 41 00:01:52,493 --> 00:01:54,210 Функцията на натоварване се използва в две места. 42 00:01:54,210 --> 00:01:57,420 Това е било използвано, за да се зареди извежда от PHP интерпретатора. 43 00:01:57,420 --> 00:01:59,700 И ние написахме всички кода на PHP боравене, 44 00:01:59,700 --> 00:02:01,840 но тя не трябва да използвате функция, наречена 45 00:02:01,840 --> 00:02:06,350 товар, които по същество гласи всички от байта на изход от Interpreter на PHP 46 00:02:06,350 --> 00:02:08,430 в голям масив. 47 00:02:08,430 --> 00:02:10,850 >> Същата функция натоварване също се използва за зареждане 48 00:02:10,850 --> 00:02:15,200 в паметта на всички байтове от файл харесват, а миг, или JPEG, или дот HTML 49 00:02:15,200 --> 00:02:16,630 файл, че потребителят е поискал. 50 00:02:16,630 --> 00:02:21,060 Така че ще трябва да използвате някои трикове и инструменти от проблем, определени в 4 файл IO, 51 00:02:21,060 --> 00:02:24,410 но трябва да се намери, че сравнително познато и в приятен начин, да се надяваме, 52 00:02:24,410 --> 00:02:28,110 на обвързване заедно по-новата интернет неща с по-стария файл IO неща. 53 00:02:28,110 --> 00:02:31,490 >> И накрая, в индексите функция, всичко, което трябва да направите, 54 00:02:31,490 --> 00:02:34,570 е да се реши дали има или няма съществува някакъв файл ефективно 55 00:02:34,570 --> 00:02:40,430 нарича индекс дот HTML или индекс дот PHP, вътрешността на директорията, чието ви път 56 00:02:40,430 --> 00:02:41,220 са минало. 57 00:02:41,220 --> 00:02:44,360 В главата на този означава, че ако потребителят прави заявка за указател, 58 00:02:44,360 --> 00:02:47,318 ние не просто ще му покажа или й съдържанието на тази директория, 59 00:02:47,318 --> 00:02:51,342 ние буквално ще им покажем индекс дот HTML, или индекс дот PHP, по подразбиране. 60 00:02:51,342 --> 00:02:54,300 Но това ще бъде оставен да можете да разбера, използвайки някои от съветите 61 00:02:54,300 --> 00:02:56,350 в изходния код, който вече сме ви дали, 62 00:02:56,350 --> 00:02:59,880 как всъщност можете да проверите дали даден файл съществува 63 00:02:59,880 --> 00:03:03,380 в текущата директория, така че можете да се върнете правилния отговор. 64 00:03:03,380 --> 00:03:05,800 >> Така че в крайна сметка има сравнително малко байта 65 00:03:05,800 --> 00:03:09,155 че трябва да се извади от проблем, определен за изпълнението на сървъра 66 00:03:09,155 --> 00:03:10,210 непълна функционалност. 67 00:03:10,210 --> 00:03:13,180 Но определено не забравяйте да увийте ума си наоколо, като голяма част от кода 68 00:03:13,180 --> 00:03:15,013 колкото можете, като се спокоен, че не правим 69 00:03:15,013 --> 00:03:18,160 Трябва да разберем, всички от ниското ниво в мрежа код, всички 70 00:03:18,160 --> 00:03:19,834 на най-ниското ниво файл IO код. 71 00:03:19,834 --> 00:03:21,750 Наистина, какво правим с този проблем набор 72 00:03:21,750 --> 00:03:25,670 е синтезиране последните няколко проблема комплекти, въвеждане малко на WebLogic, 73 00:03:25,670 --> 00:03:28,802 и концепции за изграждане на мрежи, така че в крайна сметка сте 74 00:03:28,802 --> 00:03:31,760 изгради нещо, което е наистина много Интересно, наистина доста мощен, 75 00:03:31,760 --> 00:03:33,468 но все пак с помощта на същите строителни блокове, 76 00:03:33,468 --> 00:03:36,310 че ние сме били като за известно време.