>> Wszystko w porządku.
Warto więc nurkować w niektórych szczegółowe dane techniczne.
Mam nadzieję, że z jakimś co z softball pytanie.
HTTP, dziś jest celem po prostu nie dają nam psychiczne
Model dla typów aplikacji
i projekty jesteśmy zamiar wykonania.
W środę, będziemy przechodzić dokładniej do rzeczy takich jak MVC
, a w szczególności Laravel i ORM
z którymi będziemy rozmawiać z bazy danych.
Ale na dziś, ustawmy etap do tych rozmów.
HTTP jest to, co?
Hypertext Transfer Protocol?
OK, co to oznacza?
Tak.
[Niesłyszalny Uwaga]
OK. Zamknij.
To drugi.
Nie HT - to, że HTML.
HTTP, który robi to, co dokładnie?
>> Czy to usługa, która jak przesyła tekst z powrotem
się między serwerami?
>> Tak dokładnie.
Jest to serwer.
Tak, naprawdę to jest protokół.
Jest to zbiór konwencji które służą
do przesyłania informacji z powrotem i się między klientem a serwerem.
Zazwyczaj te informacje i przyjmuje postać HTML,
Hypertext Markup Language, który jest otwarte znaczniki i zamknij tagi.
Więc jeśli masz jakieś klienta reprezentowane tutaj po lewej
a niektóre serwer reprezentowane tu w prawo.
Strzałki tam iz powrotem
między nimi stanowią że HTTP język.
A jeśli zna 50 dla przykład w zeszłym roku lub para
lat temu to polubisz Przypomnijmy, że opisaliśmy go
jako protokół w sensie , że kiedy po raz pierwszy spotkać się z kimś,
Może przedłużyć moją dłoń i powiedzieć, cześć i można powiedzieć -
>> Witam.
>> Witam. A teraz, że sortowania transakcji między klientem
i serwer jest zakończona.
Dobrze.
Więc jest tylko HTTP zestaw konwencji.
A wśród tych konwencji jest wysyłanie niektórych wiadomości.
Tak na przykład, otwórzmy Chrome.
I na kurs, można oczywiście użyć najbardziej dowolnej przeglądarki,
ale Chrome wydaje się być prawdopodobnie Najbardziej popularne w dzisiejszych czasach.
Ponieważ ma całość zestaw narzędzi wbudowanych w.
Idziemy do przodu i Zbadaj element.
Pozwól mi przejść do karty sieciowej i pozwól mi iść do czegoś
jak http://www.cs164.net i naciśnij Enter
po pierwszym uderzeniu rekord rozczarować przekierowany.
A teraz idziemy aby zobaczyć całą masę
wierszy w tej tabeli.
Co każdy z wiersze reprezentują te
kiedy odwiedzasz stronę internetową?
Tak?
[Niesłyszalny Uwaga]
Dokładnie. Wszystkie pliki Właśnie o pokazywane
jako pojedynczego rzędu że stolik tam,
ale czekać pliki.
I tylko o jednym takiego pliku, w prawo,
przypuszczalnie index.html lub index.php.
Mogą być linki, prawda?
Obraz z pewnością nie tagi wewnątrz tam,
Link jest na znaczniki CSS, skrypt jest tagi
dla JavaScript i A cała masa innych znaczników
że może faktycznie ciągnąć
w dodatkowych plikach rodzaj rekurencyjnie.
A więc to, co widzimy.
Gdybyśmy teraz do przewijania w górę bardzo Najwięcej z nich,
zauważyć, że najpierw zobaczę to faktycznie rodzaj ciekawy.
Mówi nasza strona przeniósł się tymczasowo,
Kod stanu tak mówić jest 302.
Jest jeszcze jeden podobny jeden, 301, który przeniósł się na stałe.
A jeśli przenieść czasowo lub stałe co to oznacza?
Co należy oczy szukać, aby
odpowiedzieć skąd ruszamy do?
Prąd i długość.
OK. Więc może na pewno wywnioskować, gdzie skończyło się.
I najwyraźniej skończyło się na canvas.harvard.edu / coś
co jest o wiele trudniejsze zapamiętać.
Ale bardziej technicznie, chcę zdiagnozować problem przekierowania.
Chcę zrozumieć, gdzie jestem dzieje się z punktu A do punktu B
do punktu kropka, kropka, kropka canvas.harvard.edu
w tym bardziej ezoteryczne Interfejs nagłówków.
Jak mam odpowiedzieć na pytanie, Formularz do gdzie ja przejść?
Lokalizacja. Dobrze.
Więc jeśli tu przewijać do nagłówków odpowiedzi,
zauważyć, że są to nagłówki i chciałbym go zmienić.
Jest to rodzaj dość Wersja drukowana z Chrome.
Załóżmy, kliknij View Source.
Jest surowy, że tekst serwer WWW Apache.
I wiem, że przez zerkając na tej linii tutaj.
I Apache jest tylko wolne i oprogramowanie open-source.
Jest to prawdopodobnie najbardziej popularny oprogramowanie serwera tam.
To jest wynikiem uścisk dłoni do mnie wraca.
A jeśli spojrzeć na rodzaj co jest w środku dłoni
lub kopertę, że wirtualne reprezentuje pakiety,
idzie przez linie wewnątrz
Z tego właśnie te kilka linii tekstu.
A ponieważ przeglądarki sami mówią HTTP,
są zaprogramowane Google i Microsoft
i innych firm szukać tej linii.
A kiedy widzi lokalizację: co to robi z URL
po okrężnicy prawdopodobnie?
Trafia do niego.
I możemy to zobaczyć na wiele sposobów.
W rzeczywistości, bardzo przydatne Narzędzie szczególnie w systemie Linux
i Mac OS to czy mogę otworzyć okno terminalu tutaj
i ja i ja zwijają-I i następnie wklej ten adres URL nie.
To dobry zwyczaj, aby używać cytatów
bo jeśli kiedykolwiek Pytania mają znaki
lub inne znaki, funky, rzeczywiście można sortować
z mylić wiersza polecenia.
Ale jeśli zacytować tam adres URL, teraz zobaczymy dokładnie wszystko
nagłówków, że wrócił.
I w tym przypadku, w rzeczywistości Zrobiłem, co trzeba.
Zrobiłem Canvas URL.
Zróbmy http://www.cs164.net.
Enter. Istnieje dokładnie te same nagłówki.
A jeśli chcę zobaczyć następne co wraca,
Może po prostu to zrobić ręcznie.
Więc curl jest po prostu rodzaj szybkie i brudne narzędzie diagnostyczne tutaj,
curl-I, a teraz, że adres URL ponownie i są wszystkie nagłówki
że teraz wrócić z canvas.harvard.edu.
Jakie dodatkowe informacje ich wysłaniem do nas?
To trochę odcięty.
Pozwól mi przejść się nad tym.
Tak więc jednym z tych przewodów jest ciekawa.
Długość tak treść, która jest ile bajtów były wewnątrz
wirtualnej obwiedni że wrócił.
Typ zawartości jest HTML, to może być coś innego
jeśli jest to PNG lub GIF lub JPEG.
W rzeczywistości, mówiąc ogólnie, Co to jest ciąg o nazwie?
Są to unikalne struny świata
który jednoznacznie opisać różne typy danych.
Jest to tak zwana Typ MIME, typ M-I-M-E.
Tak więc świat ma znormalizowane
że. png myślę jest "image / png".
Świat ma znormalizowane że w pliku HTML jest text / html.
Ujednolicone, że świat mp4, plik filmowy jest video/mp4.
Więc są to unikalne żetony że przeglądarki zwykle używają
w celu określenia czy grać go jako filmu, aby go wyświetlić
jako obraz, aby uczynić to jako HTML lub podobne.
Co serwer robi - Instructure Firma za płótnie
najwyraźniej użyć?
Więc Apache też tak, że używają samo narzędzie i widzimy
że za pośrednictwem tej linii tutaj.
Tak na marginesie, to już rzeczywiście zrobić coś, co jest inteligentne
że nie wszystkie strony internetowe nie.
Bardzo często strony wypluć,
nie tylko, że są one Apache, ale także
że używasz Apache w wersji 2.1.3.
Ale ci ludzie byli mądry i wyłączony numer wersji.
Dlatego, że jest mądry?
Tak.
Może dlatego, że pewne >> wersja może być odkryte
i mają szczególnie Luki
[Niesłyszalne] oczywiste.
>> Dokładnie.
To potencjał zagrożenie bezpieczeństwa.
Jeśli jesteś w istocie nadawania świat, hej,
kończy nam tę wersję.
Hej kończy nam tę wersję.
To nie jest takie trudne z Google lub po prostu zwijają nawet kłuć
wokół losowe adresy IP
i znaleźć ludzi działa buggy oprogramowanie, a następnie atakować
przez co udokumentowane oznacza, że ​​nie są.
Teraz, dlaczego nadal mówiąc Apache?
Zapewne, że to coś w rodzaju nieodpłatne informacje.
Cóż, Apache ułatwia wyłączyć numer wersji
ale nie za ich rodzaj sceny marki w ten sposób.
I to jest, jak Google i inne Firmy wiedzą, co serwery www
ludzie działają, ponieważ są po prostu mówi cały świat
każdym razem, gdy je odwiedzić.
Więc ciasteczka wróci też.
Ale może pamiętacie, że ciasteczka to jakby wielkie unikalne numery
które są zazwyczaj lubią pieczęć ręka na użytkownika.
Jego mały plik lub kawałek Dane posadzone w przeglądarce
pamiętać, kim jest użytkownik.
Stan 200 jest dobre.
X-Canvas-Meta, tak co to wszystko?
No cóż, krótko mówiąc, Świat się również możliwość, że świat
wymyślić dowolne, HTTP nagłówki i jeśli je poprzedzić
z X, że tylko oznacza, że ​​są na zamówienie.
I to jest dobry sposób, nawet do celów diagnostycznych
jeśli rozwój aplikacji opartych na sieci web
i chcesz być w stanie
zobaczyć za kulisami można wiesz co pluć tylnym końcu serwera
z tej odpowiedzi, czy co Numer wersji jest prowadzony
na tym serwerze.
Lub co jest jej wewnętrzny Adres IP,
każda rzecz, której może chce jakiś wewnętrzny wgląd
na coś, co jest dzieje, można pluć
z własną arbitralne Nagłówki HTTP w ten sposób.
Ale historia zaczęła się otwarcie strony internetowej kursu jest.
I widzieliśmy wszystkie te Wiersze w karcie sieciowej.
Pierwszy z nich był najbardziej odsetki, które przekierowywane nas
do następnego, a następnie mamy powrót do tej odpowiedzi tutaj.
Więc, gdzie jest canvas.harvard.edu?
Miejmy wcisnąć trochę dalej i sortowania
o następujące bułkę tartą.
Canvas.harvard.edu jest najwyraźniej własnością Harvardzie.
Stworzyli ten subdomeny nazywa canvas.harvard.edu.
Jak chciałbym dowiedzieć się, gdzie
światowej w canvas.harvard.edu życie?
A może bardziej konkretnie co jest jego adres IP?
Jak możemy się tego dowiedzieć?
Tak?
[Niesłyszalny Uwaga]
Absolutnie.
Więc to jest rzeczywiście odpowiedzieć na Kilka pytań tam.
Pierwsze takie proste narzędzie, by jest coś, co nazywa nslookup
choć to się nazywa inne rzeczy.
Nameserver wyszukiwania i Mogę wpisać coś
jak canvas.harvard.edu.
Enter. I to ma dać mnie podobno cała masa
odpowiedzi.
Ale pozwala zobaczyć, czy nie można sens tego.
Więc jak widać,
canvas.harvard.edu Nazwa kanoniczna jest
za to okropne szuka rzeczy,
Harvard-vanity.instructure.com.
Więc, co tu się dzieje?
, Podczas gdy w międzyczasie, jeśli będziemy czytać,
Harvard-vanity.instructure.com ma nazwę kanoniczną
coś jeszcze bardziej tajemnicze,
Harvard-170 coś -Nam-wschód-1.elb.amazon.aws.
Ponadto, że sprawa rozwiązuje
do podobno trzy różne adresy IP.
Tak więc to, co w świecie nie wszystkie z nich oznacza?
Tak?
[Niesłyszalny Uwaga]
OK. Dobry. I pozwól mi podkręcić Jedna rzecz, że pan powiedział,
to naprawdę nie jest Zawartość sieci dostawy.
Bo to zazwyczaj, że Oznacza to treść statyczna
oraz ponieważ większość Strona jest dynamicznie napędzane,
Nie będę opisywać to jako CDN
ale Amazon hostowane serwery.
Amazon oferuje usługę o nazwie Amazon Elastic Compute Cloud
EC2 za krótki.
I to tylko internetowa Serwery często Apache
lub inne elementy oprogramowania , które można wynająć w zasadzie
płacąc Amazon kilka groszy lub kilka dolarów za godzinę
i rzeczywiście uruchomić swoje Kod na swoich serwerach.
I środki, za pomocą których Nie jest to dać tajemnicze
patrząc jak ta nazwa domeny co z kolei prowadzi do jednej
lub więcej adresów IP jak tych trzech tutaj.
A z kolei ci Można tworzyć aliasy
, które są dużo bardziej przyjazny dla człowieka
za to zupełnie inaczej unmemorable adres Amazon.
I w tym przypadku Firma Instructure postanowił
aby utworzyć nieco bardziej niezapomniany adres,
Harvard-vanity.instructure.com
ale byłoby okropna rodzaju rzeczy dla nas
do odwiedzenia stron internetowych kursów.
Więc z kolei stworzył Harvard inny pseudonim, że więcej
po prostu canvas.harvard.edu.
I wszystkie te techniki są Wykorzystując coś o nazwie DNS,
Domain Name System.
I tak długo, jak system Administrator ma dostęp
do Harvardu lub Instructure jest Serwery DNS,
możesz stworzyć te aliasy.
A jeśli wy, dla projektów,
zdecydujesz się kupić domenę wymienić na 5 dolarów,
10 dolarów lub cokolwiek.
I nawet zapłacić za hosting www
lub po prostu korzystać swobodnie dostępne hosting www i chcesz go
faktycznie nie żyje na coś random.com
ale na własnej domenie nazwę, którą kupił za 5
lub 10 dolarów te są rodzaje informacji konfiguracyjnych
które będziemy badać w kierunku koniec semestru.
Jeśli i kiedy przychodzi czas wysyłać coś publicznie
więc może żyć w A bardziej interesujące URL.
Pozwólcie mi na chwilę wstrzymać Bo jesteście sortowania
niepotrzebnie bunching się tam.
Chcesz niezgrabnie tylko rodzaj przyjść i usiąść
z tyłu lub w środku?
Jeżeli nie rysuję Uwaga do Ciebie?
Wejdź
To pewnie więcej niewygodne tam.
[Pauza]
Dobrze.
OK. Mile widziane.
Dobrze.
Gdzie więc, że teraz nas opuścić?
Więc w jakiś sposób jesteśmy inne i my przejść przez ten most, jeśli
i kiedy przyjdzie czas w kategoriach
DNS jak faktycznie skonfigurować wszystko.
Niektóre, jak i inne, to żądanie HTTP,
Ten początkowy handshake osiąga serwer w jednym
z tych adresów IP.
Na tym serwerze jest coś zwany serwer WWW.
Nie dziwi.
Ale to, co naprawdę technicznie jest serwer WWW?
Ci jakby się zwrot za pewnik, ale co to jest?
Co to jest serwer WWW?
Tak?
[Niesłyszalny Uwaga]
OK. Tak, to jest po prostu komputer z pamięcią i wejść.
Wiesz, może to wyglądało
taki obraz wcześniej nawet chociaż to jest trochę
retro i więcej Komputer stacjonarny lub wieży.
Tak, to tylko komputer.
Ale technicznie, serwer WWW Komputer nie jest za słowo.
My, jako rodzaj ludzi ma długo łączyła serwery WWW
oraz serwery poczty e-mail urządzenia fizyczne.
Ale naprawdę serwer WWW jest to oprogramowanie.
Jest to oprogramowanie, uruchomiony na komputerze fizycznym.
A zatem, można mieć Serwer e-mail i serwer WWW
i wykres i każdy serwer Wiele innych serwerów
lub bardziej poprawnie Usługi uruchomione na szczycie
szczególnego komputerem wszystkie z tych usług mogą żyć
Pod tym samym adresem IP w związku z tym.
Tak, jak - jeśli cię mam wielu usług
lub działa na serwery sam komputer, jak kiedy zera
i te idą w w nich za pomocą Internetu,
nie wiem, czy komputer odpowiedzi jako serwera poczty e-mail
ze strony internetowej, z rozmowy?
Tak.
[Niesłyszalny Uwaga]
Dobry. Dokładnie.
Więc serwer WWW nasłuchuje na to, co się nazywa portu.
A jeśli wziąć CS143 Sieci, może wiesz
że porty te odnoszą protokołów, takich jak TCP
które prawdopodobnie w najmniej słyszał lub UDP.
I te porty lub numery portów są tylko unikatowe identyfikatory
które identyfikują usługi.
WWW jest tak 80, 25 jest e-mail, 23 jest Telnet, SSH jest 22
a tam dziesiątki lub setki
innych te, choć to tylko kilka bardzo popularnych.
I to jest jeden sposób na komputer z jednym adresem IP
sortować multipleksu spośród rodzaje kryteriów
i odpowiednio na nie reagować.
Więc co to właściwie znaczy?
Tak więc nie musimy się przeglądarka.
Nie potrzebujemy do zawinięcia rzeczywiście mówić do serwera WWW.
Musimy tylko zrozumieć, co Protokół jest i jak to działa
i nawiązywała do to przed chwilą.
Telnet jest rodzaj stary program szkolny.
Powrót w mój dzień, kiedyś go używać, aby sprawdzić e-mail
ale to było całkowicie niezabezpieczone.
To tylko narzędzie, za pomocą którego można wysyłać polecenia tekstowe
do innego komputera.
I z powrotem w dzień,
te komendy tekstowe często zawiera nazwę użytkownika
i hasła z nie rodzaj szyfrowania.
Jeśli jesteś zaznajomiony z SSH,
SSH jest prawie Telnet ale z szyfrowaniem.
Więc to jest trochę uproszczeniem.
Ale mogę udawać, człowieka z oknie terminala
a ten stary program szkoły Telnet jest przeglądarka.
Mogę wpisać coś jak telnet www.cs164.net
i niestety, jeśli po prostu wciskamy Enter, jego stara
ale nic nie wydaje się dzieje.
A to dlatego, że domyślnie lat temu świat postanowił
że domyślny port 23 jest Telnet
jak wspomniałem pokrótce z chwilą.
Ale nie chcę, Telnet na powiedzieć.
Chcę używać tego typu Telnet programu tekstowej udawać
jest przeglądarka Chrome i IE i innych przeglądarek
domyślnie były trudne Stworzona przez Google i Microsoft
nie do 23, ale rozmawiać do 80, a może 443
SSL dla stron internetowych opartych.
A teraz, zawiadomienia i ja spróbuję połączyć się z serwerem WWW.
Idę teraz, iść do przodu i powiedzieć coś w stylu Hello.
I najwyraźniej to nie ma po prostu przeniósł się na stałe.
Przesyłam trochę fałszywe polecenie
i jej wysłanie do mnie na ten adres tutaj.
Tak, niech faktycznie to trochę inaczej.
Niech rzeczywiście zobaczyć powiedzieć, GET/HTTP/1.1.
Więc co ja tu robię?
To jest polecenie.
Jest to swego rodzaju moim uścisk dłoni, że tak powiem.
Co jest do przodu slash zapewne wskazać?
Katalog domowy.
Więc katalog domowy tutaj, to po prostu oznacza -
dobrze nazwijmy to Korzeń tej stronie.
Cokolwiek domyślny plik jest, może to index.html,
może to index.php
i jest zasadniczo HTTP/1.1 Najnowsza wersja protokołu HTTP.
Więc udaję się Przeglądarka to dość prądu
tak że reaguje to ja mam nadzieję.
I idę do przodu i naciśnij dwa razy klawisz Enter
ponieważ sposób pracy jest że raz widać pusty wiersz,
jest serwer WWW, a następnie odpowiedzieć.
Ale niestety to jest zły wniosek.
Przeglądarka przesłała zapytanie
że ten serwer nie mógł zrozumieć.
Teraz wiele z nich jest trudniejsze do zdiagnozowania.
Ale okazuje się, że cs164.net używa serwera Apache.
I nie wiele możemy dowiedzieć się.
Ale jej również za pomocą czegoś zwany wirtualny hosting
w których możesz znać.
Może niejasno od twoje dni CS50
lub jeśli masz napisane strony komercyjne przed,
co wirtualnego hosta lub vhosta?
Tak.
[Niesłyszalny Uwaga]
OK. Dokładnie.
Więc jest wiele warstw multipleksowanie tu więc mówić.
Gdy pojawi się żądanie na jakimś serwerze
w określonym adresem IP, należy minimalnie trzeba, że ​​numer portu
tak że serwer zna jest e-mail, jest to żądanie internetowej,
czatu, lub co nie.
Ale jeśli kiedyś dowiedzieć się, OK, jego port 80.
To oczywiście wniosek na stronie internetowej.
Ale nie byłoby miło
jeśli jeden serwer może faktycznie obsługuje wielu
strony internetowe, food.com i bar.com i bass.com
więc nie potrzebują jednej fizycznej Serwer lub jeden kawałek
oprogramowania dla każdego cholera internetowej na świecie.
Więc wirtualny świat wymyślony hosting, który pozwala
umieścić kilka nazw domen na tym samym adresie IP.
Ale haczyk jest połączenie Właśnie z wykorzystaniem protokołu Telnet,
określenie portu 80 do www.cs164.net I nie wspomniał
nazwy domeny że jestem zainteresowany
w poza linię poleceń.
I niestety i to jest mało nieoczywisty.
Jak tylko naciśnij Enter,
zasadniczo Telnet rozmyślnie jest konwersja
www.cs164.net dla mnie na adres IP
a potem po prostu wysyłając mój surowy Żądanie GET do serwera.
Tak, że pojęcie, że to www.cs164.net całkowicie stracił,
prawo.
Telnet nie jest przeglądarka dlaczego przeszkadza wysyłanie
dodatkowe informacje do serwera?
To nie jest tak mądry.
Więc ma przeglądaj przypomnieć serwer
że nie tylko nie chcę uzyskać na stronie głównej,
Chciałbym także, aby określić Gospodarzem cs164.net.
I tak do nagłówka HTTP mówić dokładnie, że Host:.
Teraz, kiedy nacisnąć klawisz Enter, ja wrócić tego samego przekierowanie
że widziałem w Chrome i że widział w curl ale ośmielę się powiedzieć teraz,
robimy to tylko o, jak niski poziom
jak jest to technicznie możliwe
Za pomocą tych bardziej Polecenia zaawansowanych.
Teraz, dlaczego jest to przydatne?
Tak więc, nie jest to normalny sposobem, aby odwiedzić stronę internetową
ale prawie za każdym razem, to trzeba zdiagnozować jakiś problem
z aplikacji internetowej który obejmuje serwer lub fragment
oprogramowania lub nowo stworzył wirtualnego hosta
lub nowo kupił nazwę domeny.
Są to dokładnie te narzędzia że wiesz, Tim i Rob i ja
a inni będą używać po prostu spróbować rysunku
się, co się dzieje nie tak, prawda?
Sprawa w punkcie, kiedy tylko dostać Nazwa domeny, w jakiś sposób mają
powiązać adres IP zajęcia z nim.
I zrobić to zazwyczaj poprzez Interfejs internetowy na GoDaddy
lub namecheap.com lub gdziekolwiek kupił nazwę domeny.
Tak różne strony internetowe mają różne narzędzia
ale jest to w zasadzie w Excel z kolumnami
dla nazw hostów i kolumn
dla adresu IP coś w tym stylu.
Ale jest problem, bo w każdej chwili jesteś proszony
powiązać adres IP z nazwą hosta, pojawi się pytanie,
jego TTL, która stoi do - wziął 143.
Słyszę to tutaj.
Czas żyć.
TTL oznacza, ile sekund Należy mieć na uwadze ten wpis
dla i pamiętać, Mam na myśli w pamięci podręcznej.
Więc, krótko mówiąc, również w świecie DNS
tam jest ta cała Pojęcie buforowania.
I to jest temat będziemy zwiedzanie w trakcie, jak również
przy czym poziom oprogramowania buforowanie jest często bardzo
dobra rzecz.
A co rozumiemy przez buforowanie strony internetowej na przykład
lub buforowanie DNS rekord, adres IP?
Co to znaczy do pamięci podręcznej?
Tak.
[Niesłyszalny Uwaga]
Tak, dokładnie, tylko utrzymanie wokół tak, że kopia
jeśli nie zmienia się ani szczerze mówiąc, nawet jeśli nie zmienić,
pozwala nie zauważyć, na co najmniej kilka sekund może nawet kilka
minut lub gorzej na godzinę lub dwie.
I na stronie internetowej, to polubisz widziałem tego wcześniej,
Czasami, jeśli jesteś za pomocą strony internetowej,
nie tyle największe strony internetowe.
Masz tendencję do uzyskać to szczegóły w prawo jak Facebook
i Gmail i podobne.
Ale jeśli używasz innego Strona internetowa, która korzysta wiele
z technologii użyjemy w tej klasie,
to często decyzja projektowa zdecydować, czy
buforować co a jeśli tak, to jak długo buforować coś.
I jeśli kiedykolwiek byłeś na stronie
gdzie na przykład trafisz Zapisz a następnie odśwież stronę
i co ci pisał tam nie ma.
Ale wtedy może i ty załaduj ponownie i wydaje się.
A w rzeczywistości, faktycznie mam widziałem objaw nawet
z Facebooka raz na jakiś czas
gdzie jeśli przeładować Twój News Feed,
czasami coś tam jest, czasami znika
i rzeczy nie Naprawdę wydaje się spójne.
I to jest często wynikiem po prostu buforowanie problemów.
Na jednym wniosku, że jesteś uderzając jeden serwer.
Na innym wniosku, że jesteś uderzenie innego serwera
i ich bufory, ich kopie
stron internetowych nie może być idealnie zsynchronizowane
od kilku sekund lub minut
więc można zobaczyć różne kraje świata.
To samo dzieje się z DNS.
Jeśli zdecydujesz, że jesteś właścicielem food.com
a jeśli już umieszczenie go na GoDaddy,
dość popularny internetowy Firma m.in. hosting
i zdecydować, nie, ja nie bardzo lubię ich polityki,
Naprawdę nie lubię ich ceny, ich usługi.
Chcę zmienić na inny internecie firmy hostingowej razem.
Co robisz?
Cóż, po prostu zmienić Adres IP food.com do punktu
na serwerze kogoś innego, kto masz zamiar uruchomić pieniądze.
Ale ponieważ cały DNS Serwer korzysta z pamięci podręcznej systemu,
co to może oznaczać dla użytkowników
jeśli nagle przenieść Twoja strona z tutaj
się tu, inaczej Adres IP.
Dobrze.
Dla pewnej liczby niezerowej minut lub sekund,
użytkownicy mogą skończyć się tutaj na przykład, lub tutaj
ponieważ ich system operacyjny, ich przeglądarka, ich ISP,
ich dom może mieć routera buforowane starego adresu IP
w tym momencie, jej naprawdę trudno rysunku
się dokładnie, co się dzieje źle.
Jak więc zacząć gonić w dół nawet kwestie takie jak to?
Tylko przez następujące te bułki tartej
i zrozumienie w końcu to, co jest HTTP
i co to znaczy wysłać wniosek i co zrobić narzędzia
jak nslookup faktycznie dla Ciebie zrobić.
I tak, jak można wykonać niektóre z tych poleceń niskiego poziomu
i po prostu dowiedzieć się, co w rzeczywistości jest nie tak.
Więc wiesz, do kogo zadzwonić, którzy wysłać e-mail do off czy co
zmienić na własnym serwerze.
I jak na bok, Zgaduję, że większość
z was wykorzystali CS50 Urządzenie, jeśli nie brać CS50.
Nawet jeśli nie wiele
z masz prawdopodobnie używane Apache, czy na własnych komputerach Mac
Skrzynki lub PC lub Linux.
Podobnie jak na bok, jeśli zrobić otwórz okno terminala tutaj
na najnowszych Appliance CS50 i roota z Sudu su
a następnie przejść do Ten katalog
tutaj etc / httpd / conf.d /.
To jest powszechne miejsce na serwerze WWW -
dla serwerów WWW Apache, aby zapisać ich pliki konfiguracyjne.
Conf.d tylko oznacza konfigurację katalog z całą bandą
plików, a jeśli otworzę się z vi na przykład,
Urządzenie 50, będziesz faktycznie zobacz jak wirtualny hosting
w CS50 urządzenie zostało pracy tych wszystkich czas.
Jeśli to było wycofanie podczas
, które można umieścić większość każda strona w środku
z katalogu Twój host jest w urządzeniu.
Jak to właściwie działa?
Również zauważyć, jest nieco Arcane i można sortować
z prześledź drogę przez to korzystając z dokumentacji.
Ale zasadniczo Prawdopodobnie najbardziej użyteczne linia
patrzeć - patrzeć na to.
Ta linia tutaj zasadniczo opowiada serwer WWW, aby spojrzeć
w John Harvard katalog vhosta
na dolnej przypadku wersji niezależnie od nazwy serwera
lub nazwa domeny była faktycznie odwiedził.
A my nie musi iść w tego stopnia majsterkowania.
Jednak przy użyciu Apache, to wy
które ostatecznie mają Kontrola nad tymi szczegółami.
OK. Tak, od tej pory, możemy teraz wziąć za pewnik, HTTP, prawda?
Dobrze.
Więc dlaczego nie zrobić , w szczególności gdy niektóre
z czujesz się nieco niewoli Publiczność, dlaczego nie iść dalej
i odpocząć dwie minuty,
gdy wrócimy będziemy nurkować nieco do MVC, a my
na nuta - problemem tym będziemy następnie rozwiązać w środę
z narzędzia zwanego Laravel.
Więc weźmy kilka minut.