Głośnik 1: Dobra, więc co to ty konkretnie trzeba zrobić? Cóż, okazuje się, istnieje zaledwie cztery funkcje które należy wdrożyć których funkcjonalność jest Integralną częścią prawidłowego Działanie serwera WWW, ale którego wszystkie zachowanie jest bardzo wąsko zdefiniowane tak, że tylko zrobić prawie jedną rzecz. Pierwszą rzeczą, którą zamierzamy do musisz zrobić, to wdrożenie, wg specyfikacji, funkcja wyszukiwania. Jest to dość prosta funkcja w koniec, że jako argument co ścieżka do pliku że użytkownik chce zażądać, i trzeba reagować z tak zwany typ MIME lub Content-type, tego pliku. Na przykład, jeśli jest to jak plik hello kropka HTML masz zamiar odpowiedzieć z MIME rodzaj cytatu slash tekst HTML. Albo czy jest to obraz, możesz odpowiedzi z obrazu dot kreską Momencik lub obraz slash JPEG. Zobacz specyfikację dla różnych formaty plików należy do wykrycia. Ale tak naprawdę sprowadza się do robienia patrzeć na drogę, że jesteś obok, i patrząc na jego pliku Rozszerzenie, w ostatnich kilku znaków po okresie spływu lub kropką. Będziemy więc pozostawić je do Ciebie z niektórymi z podpowiedzi w specyfikacji dowiedzieć się dokładnie, jak znaleźć że kropka i rozszerzenie pliku tak, że można zrobić to mapowanie jeden do drugiego. Następna w kolejce jest funkcja parse. Tak więc ten jeden jest trochę bardziej zaangażowane w tym trzeba wziąć w tym Argument [niesłyszalne], to powtórzyć nad nim, charakter w charakterze, lub ciąg sznurkiem, W celu upewnienia się, że spełnia dokładnie formalna definicja, że ​​pierwsza Żądanie linii, zgodnie ze specyfikacją. I trzeba załadować do absolutnego Ścieżka, że ​​podciąg, który reprezentuje coś, slash powitania dot HTML. Tymczasem, ewentualnie, po czym Ścieżka może być znak zapytania a następnie ciąg kwerendy jak, q wynosi kotów, lub q równa koty Ampersand i potem jeszcze parę klucz wartość. Więc będziesz musiał krok na tych znaków, jak dobrze, aż do momentu Pierwsza przestrzeń, w celu aby utworzyć ciąg, który przechowuje wewnątrz niego sam ciąg kwerendy. Następnie będziesz realizacji funkcji obciążenia. Tak więc okazuje się, jeśli spojrzeć przez kod źródłowy, jako spec kieruje, funkcją obciążenia jest stosowany w dwóch miejscach. To albo ładujący Wyjście z interpretera PHP. I pisaliśmy wszystko kod obsługi PHP, ale nie musi używać funkcji o nazwie obciążenia, które zasadniczo czyta wszystkie z bajty wyjścia z interpretera PHP do wielkiej tablicy. To samo obciążenie funkcji służy również do ładowania w pamięci wszystkich bajtów z pliku podobnych, Momencik, lub JPEG lub kropka HTML Plik, że użytkownik zażądał. Więc trzeba będzie korzystać z niektórych trików i narzędzi z problemem zestaw 4 w pliku IO, ale należy zauważyć, że stosunkowo znane i w miły sposób, mam nadzieję, związania razem nowszą internecie rzeczy ze starszym plików IO rzeczy. Na koniec, w indeksach Funkcja, wszystko co musisz zrobić, jest, aby zdecydować, czy istnieje skutecznie istnieje jakiś plik zwany wskaźnik dot HTML, PHP lub indeksu kropka, wewnątrz katalogu, którego ścieżka was to przeszłość. Zaletą tego oznacza, że ​​jeżeli użytkownik nie poprosić o katalog, nie jesteśmy po prostu zamiar pokazać go lub jej zawartość tego katalogu, my dosłownie pokazać im indeksu kropkę HTML, PHP lub indeksu kropka, domyślnie. Ale to będzie należeć do ciebie dowiedzieć się, za pomocą niektórych podpowiedzi w kodzie źródłowym, które my już wam, jak rzeczywiście można sprawdzić czy dany plik istnieje w bieżącym katalogu, tak aby można przywrócić prawidłową odpowiedź. W końcu, więc nie stosunkowo niewiele bajtów że trzeba wyjąć z Problem ustawić do wdrożenia serwera niepełna funkcjonalność. Ale na pewno upewnij się owinąć twój umysł wokół tyle kodu jak to możliwe, biorąc komfort w to, że nie muszą zrozumieć wszystkie z Najniższy poziom kodu sieci, wszystkie najniższego poziomu kodu plików IO. Naprawdę, co robimy z tego zestawu problemów syntetyzuje ostatnich kilku problemu zestawy, wprowadzając trochę WebLogic, i koncepcji sieciowych, tak że ostatecznie można zbudować coś, co jest naprawdę bardzo ciekawe, naprawdę bardzo silny, ale przy użyciu same klocki, które używaliśmy przez jakiś czas.