[Powered by Google Translate] [Seminarium] [Przygotowanie witryny w sieci] [Yuechen Zhao] [Harvard University] [To jest CS50.] [CS50.TV] Okay. Oto kolejna godzina rozwoju internetowej, jeśli jesteście to. Dziś mam zamiar mówić o przygotowanie witryny w sieci WWW. Wszystkie dni - i prawdopodobnie w ciągu ostatnich 2 tygodni - rozmawialiśmy o tym, jak stworzyć stronę internetową, jak używać języka HTML, jak używać PHP, jak używać ramy, Jak upewnić się, że można komunikować się z bazą danych - takie rzeczy. Ale dzisiaj, będziemy mówić o tym, gdzie Twoja witryna będzie żyć po CS50. Bo przecież, CS50 nie dzieje przeszłości grudniu. Będziemy mówić o nazwach domen, hosting. Będziemy mówić o tym, co kompatybilność z różnymi przeglądarkami i kompatybilność między platformami są, i jak można się upewnić, że strona będzie działać w każdych warunkach. Porozmawiamy o obsługę błędów i innych magii serwera. Mówimy o optymalizacji wydajności, optymalizacji pod kątem wyszukiwarek, i jak, aby ludzie rzeczywiście odwiedzić swoje strony internetowe. I wreszcie, tylko kilka dobrych zasobów, aby upewnić się, że macie wystarczająco dużo osób zejść z ostatniego projektu, i mam nadzieję, że po. Pierwszą rzeczą, którą będziemy rozmawiać o to nazwy domen. Teraz jesteś programowania w swoim urządzeniu, będziesz na lokalnym komputerze , które nie jest w rzeczywistości nazwa domeny. To jakby tylko pseudonim lub alias dla aktualnej instalacji systemu Linux wewnątrz albo VMware na odtwarzaczu Mac lub VMware na komputerze PC. Nazwy domen pozwala umieścić witrynę na stronie, a następnie przejść do czegoś www.google.com i uzyskać na stronie internetowej. Jak to działa? Powiedzmy, że jesteś po prostu przeciętny serwer WWW - Przeciętny internauta i masz laptopa, i udać się do www.howstuffworks.com. Prawdopodobnie można zobaczyć, gdzie Wygrałem to od. How Stuff Works - komputer poprosi lokalnego serwera DNS, "Czy wiesz, gdzie ta strona jest?" "Czy znasz adres IP www.howstuffworks.com?" Serwer DNS może powiedzieć: "Tak, wiem". W takim przypadku, można uzyskać adres IP, a komputer uzyskuje dostęp do tego adresu IP. Jeśli nie, to pyta inny serwer DNS, "Hej! Czy wiesz, co www.howstuffworks.com jest?" Serwer ten może powiedzieć: "Tak, wiem". Tak, mówi ten drugi, co to jest, i wreszcie, że informacja zostaje przekazana do komputera, i można przejść howstuffworks.com. Jak można dostać jeden z tych magicznych rzeczy? Jak można dostać może www.yourname.com lub www.ilovecats.com? Możesz zarejestrować się w jednym, i istnieje wiele stron internetowych, które obecnie nie pozwalają na to. Musisz - w większości przypadków trzeba za nie zapłacić. Istnieją pewne nazwy domen, które są wolne. Jeśli pójdziesz do tkdomainnames www.co.cc lub., To są wolne. Ale, że nie pochodzą z pewnymi ograniczeniami, w tym niektóre z nich mogą nawet nie być real, top-level domain names like. com lub. NET. Normalnie Proponuję udać się do jednego z nich ponieważ użytkownicy są po prostu bardziej komfortowo z nich. Widziałeś wiele. Coms. Widziałeś wiele. Sieci. Prawdopodobnie nie widziałem wiele. Co.cc 's, więc są one trudniejsze do zapamiętania. Różne strony internetowe, takie jak GoDaddy lub lub Namecheap - Kiedyś taki, który jest rodzaj szkicowy - zwany activedomain.com. Wygląda to bardzo podejrzanie, ale to naprawdę dobrze dla mnie. I wreszcie, masz innych, że może zrobić więcej, reklamy jak Network Solutions. Ale jeśli pójdziesz na NetworkSolutions.com i spojrzeć na ich ceny to jest bardzo drogie. Patrzyłem na nich w nocy. Do jednego roku od nazwy domeny, to chyba nie warto, że dużo pieniędzy. W rzeczywistości, jeśli jesteś coraz. Com lub. Org czy. NET Zazwyczaj cena jest o 10 dolarów na rok. Więc jeśli masz płacić dużo więcej niż to, to chyba nie, że warto bo przecież te strony nie robić nic z tej nazwy domeny. Oni po prostu dać ci to, a więc jeśli można dostać za tanie, to dlaczego nie? Inna sprawa, skoro masz nazwę domeny, a następnie prawdopodobnie chcesz przejdź do albo Godaddy.com lub gdziekolwiek kupić nazwę domeny i ustawić serwery nazw dla tej domeny. Co to znaczy, gdy użytkownik przechodzi do www.howstuffworks.com, te adresy serwerów nazw IP są adresy IP, które będą w stanie sprawdzić. Będą mogli uzyskać dostęp do strony przez tych serwerów nazw. Jeśli stosuje się do organizacji gdzieś wtedy Twój komputer będzie najprawdopodobniej daje serwery nazw do wykorzystania. I wreszcie, to jest coś, co nazywa WHOIS. Baza danych WHOIS jest baza danych, z którą mógłby wejście nazwę domeny i to wypluć trochę informacji na temat właściciela tego terenu i inne informacje kontaktowe. Teraz, można powiedzieć, "I naprawdę nie chcę mój adres domowy lub I naprawdę nie chcę mojego adresu e-mail na stronie internetowej dla wszystkich, aby zobaczyć, czy w Internecie dla każdego. " Następnie możesz użyć coś, że wiele usług hostingowych zapewnić - jak menedżera WHOIS. Menadżer WHOIS jest po prostu inna usługa, że ​​wiele z nich zapewnia, że Odległość że ukrywa informacje i właśnie stawia w który jest kierownikiem w nazwie - na adres to zwykle tylko, że nazwa firmy, który dał ci tę nazwę domeny - i tak to Twoje dane osobowe nie jest ujawniony w Internecie, który jest zazwyczaj bardzo dobry. Ja sam skorzystać z jednej z tych usług. Jeśli nie dbasz o własną prywatność, to nie ma znaczenia. Serwer DNS oznacza Domain Name System, a co to jest - to jest coś w rodzaju skrótu gdzieś tabeli, który mówi,  "To adres strony internetowej będzie mapować do tego adresu IP." I to wszystko jest. Więc kiedy kwerendy tego serwera DNS, a następnie można uzyskać adresy IP do tego odpowiedniej nazwy domeny, a następnie odwiedzić tę stronę. (Członek publiczność zadaje pytanie - niesłyszalne) Pierwszy? Pierwszy poziom rzeczywiście jest zwykle tylko twój cache komputerze. Twój rodzaj komputerowy pamięta, kiedy ostatni raz, że udał się do www.google.com było w tym adres IP, a następnie po pewnym czasie, że cache wygaśnie, i zapyta jak Comcast DNS "Hej, co jest www.google.com?" Normalnie, gdy kupisz nazwę domeny i zarejestrować jeden, i założyć stronę internetową, nie można przejść do tej strony bezpośrednio z tej nazwy domeny, ponieważ serwery nazw na całym świecie nie wiedzą o swojej domeny jeszcze. Ma do wypełnienia. To zwykle trwa około 24-48 godzin. Dobrze. Tak, to trochę o nazwach domen. Są bardzo fajne. Myślę, że powinieneś dostać jeden, jeśli myślisz poważnie o projekcie i jeśli naprawdę chcesz, aby Twój projekt znany w całej uczelni, o nazwę domeny sprawia, że ​​wygląda bardzo profesjonalnie. Wtedy następnym krokiem oczywiście jest mieć jakiś hosting. Jeśli tylko udostępniać je na komputerze, nikt kiedykolwiek będzie w stanie udać się do niego. Potencjalnie można skonfigurować serwer na komputerze i chronić komputer na zawsze, ale nie jest to zalecane. Istnieją różne rodzaje hostingu przez Internet. Nie jest dzielonego hostingu. Jest VPN (niezrozumiałe), które są wirtualne hosty. Jest pół-profesjonalne i dedykowane. Z ostatnich 3, VPN, semi-profesjonalne i dedykowane są zwykle droższe. Są one zazwyczaj używane do stron internetowych, które wymagają więcej zasobów. Jeśli dopiero zaczynasz z strony internetowej, to może być tylko bardziej ekonomiczne, aby przejść z dzielonego hostingu. I to, co wspólne środki jest tylko kilka stron internetowych są razem sortować z jednego serwera na stronie internetowej na serwerze hosta, można uzyskać dostęp do witryny internetowej poprzez nazwę domeny. Istnieje wiele popularnych gospodarzy tam. HostGator i DreamHost - to bardzo, bardzo duży i bardzo, bardzo popularne i bardzo, bardzo udany. Ja osobiście używam jeden zwany MDDHosting. Jeśli pójdziesz do www.mddhosting.com, że mój gospodarz wyboru. Myślę, że są bardzo dobre. Zawsze byli bardzo niezawodny i nigdy nie miałem żadnych problemów z nimi. Mają one również bardzo konkurencyjne ceny. Dwa, że ​​ja nie lubię są GoDaddy - to również bardzo popularny gospodarz, ale miałem straszne doświadczenia z nimi, i wiele osób, które znam miały naprawdę straszne doświadczenia z nimi. Oni jakby iść po ludzi, którzy nie wiedzą, co robią - może robisz stronę po raz pierwszy, i tak jakby con ich do kupowania ich pakiet hostingowy. Nie rób tego. Nie należą do niego. Idź szukać innych pakietów hostingowych, które naprawdę pasują do Twoich potrzeb. A drugi jest - są jeszcze wolne gospodarze tam. Istnieją strony internetowe, które będzie gospodarzem swojej stronie internetowej za darmo - czasem poprzez umieszczenie reklamy na swojej stronie, czasem poprzez wziąć udział w ich forum, ale czasami po prostu również za darmo. Ale uważaj z bezpłatnych gospodarzy, ponieważ wiele z nich tak naprawdę zbankrutować po kilku miesiącach. Po prostu nie można nadążyć z kosztami. Inne są po prostu bardzo zawodna, a Twoja strona będzie zawsze w dół, i nie chcesz, aby tak się stało. Każdy gospodarz zaoferuje własne panel sterowania. Zauważ, że dla danego urządzenia, tak naprawdę nie jest centrala per se. Musisz użyć terminala iść i edytować pliki. Musisz rzeczy chmod samodzielnie. Jeśli chcesz iść do PHPMyAdmin, musisz iść do localhost @ / phpmyadmin i takie rzeczy. Ale z panelu sterowania można wejść i edytować pliki na serwerze z Eksploratora Windows lub finder typu aplikacji. Można też przejść i spojrzeć na swoje bazy danych z własnym narzędziem zamiast phpMyAdmin. Tak, istnieje wiele możliwości wyboru tego, a niektóre z bardziej popularnych paneli sterowania są tam. Ale jeśli szukasz gospodarza, to może warto spojrzeć na to, co rodzaju dostosowań i opcji oferują mi dostosować mój serwer i aby moja strona działać lepiej. Tak, to można zapytać: "Cóż, Jak wybrać hosting?" Jeśli pójdziesz na każdej stronie gospodarza jest dużo żargonu, i istnieje wiele możliwości. Istnieje wiele różnych cen również. Normalnie idę na tańsze tylko dlatego, strony internetowe, które być może i robię - zwłaszcza teraz, zwłaszcza początek - mogą one nie potrzebują tak wiele zasobów Jak można na stronie internetowej jak Microsoft.com. Najpierw trzeba zajrzeć do systemu operacyjnego, jeśli jesteś naprawdę ciekaw, czy Twoja witryna będzie znajdować się na Linuksie, w systemie Windows lub na komputerze Mac. Zwykle po prostu iść z Linuksem, ponieważ to zwykle najtańsze, , a także taki, który może chłopaki są bardziej zaznajomieni z powodu urządzenia. A potem może będą wprowadzone pewne ograniczenia w ilości pasma, które można dostać - jak, ile megabajtów lub gigabajtów danych użytkownicy mogą pobierać z Twojej strony na miesiąc? Lub miejsca na dysku. Jak dużo miejsca można dostać? Czy jest to 500 MB? Czy 2 GB? Czy jest nieograniczona? W dzisiejszych czasach wiele serwerów daje nieograniczoną ilość miejsca na dysku w sposób dla nich aby zachęcić was, aby ich pakiet hostingowy. Ale jeśli naprawdę myślisz o tym, kiedy ty kiedykolwiek będziesz potrzebować nieograniczoną ilość miejsca na dysku? Jeśli masz kilka plików HTML, kilka PHP, kilka zdjęć - to tylko kilka megabajtów, a więc zazwyczaj po prostu pójść na wartości może kilka GB "przestrzeni, i to może być za mało, aby rozpocząć mnie, dopóki nie potrzebujesz więcej. Wreszcie, mogą nałożyć ograniczenia na jakie - jak wielu baz danych można mieć. Może masz tylko 1 bazę danych. Może masz 2. Może masz 10. Czy to jest naprawdę ważne dla Ciebie, ile można dostać? Atrakcje zadać. I w końcu, tylko rzeczy, jak języki. Czy oni obsługuje PHP? Czy oni obsługuje MySQL? Większość stron internetowych hosting nie obsługuje te, ponieważ są one wolne. Są open source. To nie kosztuje nic, aby zapewnić im je dla Ciebie. Ale jeśli chcesz używać, powiedzmy, Ruby lub Python lub niektóre z tych innych językach - że nie może wspierać go na swoim serwerze, więc ważne jest, aby szukać tych rodzajów rzeczy. I wreszcie, nie pozwalają Ci zrobić kilka bardziej zaawansowanych rzeczy jak pracy SSL lub cron? SSL jest opcja, gdzie można zrobić stronę internetową bardziej bezpieczne, co czyni go HTTPS i szyfrowanie połączenia. I crona są tylko może skrypty, które chcesz uruchomić co 5 minut, co 10 minut, co 15. Wiele wspólnych hosting stron internetowych czy nałożyć ograniczenia od liczby miejsc pracy crona, które można uruchomić z powodu, że zajmuje więcej zasobów. I wreszcie, po prostu wszystko inne co chcesz patrzeć - upewnij się dokładnie, co się dzieje przed zakupem pakietu hostingowego. I wreszcie, performance. Wydajność jest ogromna. Jak szybka jest moja strona będzie prowadził? Większość użytkowników nie będzie czekać nawet sekundy na swojej stronie internetowej, aby uruchomić zanim po prostu nudzi, i idą na MeanBase i zacząć patrzeć na zdjęcia kotów - wiesz, co się dzieje, i chcesz, aby upewnić się, że masz to użytkownikowi na pokładzie i że masz dobry czas pracy co oznacza po prostu, że Twoja strona będzie dostępna przez cały czas. Wiele komputerów ma naprawdę zły czas pracy i że po prostu oznacza, że ​​strona nie będzie dostępne i nie chcesz, aby tak się stało, ponieważ może być smutna. Można także śledzić swoje osiągi z gospodarza serwisach takich jak Pingdom.com lub Host-tracker.com, i po prostu powiedzieć, jak często jest Twoja strona w dół. I w końcu, chcesz zobaczyć, o ich wsparcie. Jeśli masz problem jadą się odpowiedzieć w ciągu 24 godzin? Czy oni się odpowiedzieć w ciągu 48 godzin? Usługi hostingowe, że mogę używać normalnie reaguje na mnie w ciągu kilku minut który jest naprawdę ładny. Uff! Wszystko w porządku! To jest czas na przerwę. Ale ja nie zamierzam ci go. Musimy po prostu patrzeć na zdjęcia ślicznych kotów co chwilę. Kolejny naprawdę duża rzecz jest kompatybilność z różnymi przeglądarkami. Co mam na myśli przez zgodności z różnymi przeglądarkami? Wiesz, w dzisiejszych czasach to nie tylko Microsoft Internet Explorer. To nie tylko Mozilla Firefox lub Safari. Teraz mamy Chrome. Mamy Operę. Mamy Dolphin. Mamy Camino. Mamy Zdobywcę. Mamy tych wszystkich różnych przeglądarkach. Rzeczy, które wychodzą teraz - RockMelt - choć te są oparte na Chromium. Ale faktem jest, że nie tylko jedna przeglądarka jest już. Nie jesteś po prostu oglądania tych stron internetowych z jednym wniosku. I tak różne przeglądarki będą reagować na różne HTML, CSS różne i inny JavaScript inaczej i jak można sobie z tym poradzić? Cóż, w niektórych przypadkach, na pewno nie. Twoja strona - jeśli działa w jednej przeglądarce, kod, który napisałeś nie będzie działać w innej przeglądarce, a Twoim zadaniem jest, aby upewnić się, że kod, który piszesz jest uniwersalna, że ​​działa wszędzie. Tak więc, jest to bardzo niebezpieczne. Jeśli mówisz: "Dobrze, że to działa na moim komputerze. Great! Przejdźmy." Cóż, to prawdopodobnie nie będzie pracować na kopalni, a kiedy idę na swojej stronie Mam zamiar być bardzo smutne, i mam zamiar wyjechać od razu. Więc zobaczmy, jak można temu zapobiec. Pierwszą rzeczą, oczywiście, jest tylko użyć standardowego kodu HTML, CSS i JavaScript. Co mam na myśli? Cóż, jest wiele rzeczy, nie standardowych tam. Na przykład, w CSS istnieje wiele wersji. Jeśli widzisz jakieś CSS z-moz-czy-webkit-, przepisy te są specyficzne zarówno dla Mozilli i przeglądarki WebKit, i tak chcesz się upewnić, że może chcesz uniknąć tych rzeczy bo jeśli używasz-moz-ta zasada jest tylko idąc do pracy na Firefox. A jeśli naprawdę chcesz go dobrze wyglądać również w przeglądarce Internet Explorer, będziesz mieć pecha. Dla HTML również, można robić rzeczy w HTML, które pracują w jednej przeglądarce ale, że przerwy w innym, a chcesz uniknąć jak najwięcej. I wreszcie dla JavaScriptu nawet - istnieje wiele wersji języka JavaScript, i latem tego roku wpadliśmy na problem gdzie Document.getElementsByClassName-- która jest zwykle funkcję, która jest zdefiniowana jako część standardu JavaScript - nie było znaleźć w programie Internet Explorer 8. Tak więc, w okresie letnim pracowałem w laboratorium i budowaliśmy Internecie eksperymenty. I myśleliśmy, że pracuje bardzo dobrze, dopóki nie uświadomił sobie użytkowników, które zostały przy użyciu Internet Explorer 8 nie mógł przedstawić swoje wyniki. Byliśmy brakuje na wielu danych. To nas naprawdę smutne. Tak, zawsze chcesz mieć pewność, że twoje skrypty będą działać wszędzie. I wreszcie korzystać validator.w3.org czyli to, co możemy powiedzieć, zrobić w Pset 7. Upewnij się, że strony są sprawdzane. To ważne, bo to przynajmniej jest pierwsze sprawdzenie poczytalności krok. Czy mój kod rzeczywiście zgodny ze standardami? Innym sposobem do rodzaju pomóc upewnić się, że witryna będzie działać w większości przypadków jest może korzystać z niektórych bibliotek i ram bo te bardzo inteligentne twórcy pomyśleli o tych sprawach dla Ciebie. Oni przeszli przez i pisałem różne funkcje, które działają w różnych przeglądarkach. Na przykład, możemy użyć jQuery w Pset 7. Choć może nie widziałeś, jQuery zapewnia wiele funkcji które w przeciwnym razie trzeba by napisać samemu. Ale te deweloperzy to napisał, i upewnić się, że to działa na wszystkich przeglądarkach. A Bootstrap - co jest kolejnym framework CSS, które pokazaliśmy w Pset 7 - to naprawdę zabiera dużo bólów głowy z projektowania stron internetowych, które wyglądają dobrze. we wszystkich przeglądarkach. I wreszcie, czy można go uniknąć, zazwyczaj uniknąć kodowanie od podstaw. Jeśli jesteś po prostu stworzenie strony internetowej dla swojego klubu w szkole, na przykład, i wszystko, co musisz zrobić, to wyświetlić kilka stron i może mieć wasz prezydent iść i zmienić kilka rzeczy tu i tam - tam naprawdę nie ma potrzeby, aby kod, który się samodzielnie. To zajmuje dużo czasu. To zajmuje dużo swojej energii i trzeba przejść i trzeba dowiedzieć się, dobrze, to się będzie dobrze wyglądać w tej przeglądarce, to będzie dobrze wyglądać w tej przeglądarce. Może korzystać z niektórych z tych poprawek, które inni już napisane dla ciebie, jak WordPress czy Joomla czy Drupal. Są to tak zwane zawartość - są to tzw CMS, które w zasadzie są tylko pakiety, które już się zrobić dla Ciebie, i można je pobrać, umieścić je na serwerze, i dostosować je jak chcesz, i masz już stronę internetową z systemem. Takie pakiety kodu są na co popatrzeć w celu. Te rzeczy są open source chyba że go na coś takiego - jeśli szukasz pakietu formularzy, są rzeczy, które nie są wolne, jak VBulletin lub IP.Board. Jeśli nie potrzebujesz niektórych z tych zaawansowanych funkcji, zawsze możesz zdecydować się na bezpłatny opcji. I wreszcie, nie ma uniknięcia go. Musisz test, test, test. Musisz przetestować swój kod na wszystkie z tych przeglądarek, a na każdej z tych platform. I wiesz, IE6 - podziękować ludziom dobroć zaczęli odejście od IE6 bo już w dzień, może kilka lat temu, developerzy byli zawsze, zawsze, zawsze schlebiać słabości IE6 jest w następujących standardów. Strony tylko spojrzał rodzaju 1990 dla braku lepszego sposobu radzenia sobie z nim. Można również użyć ekranu przeglądarki, aby sprawdzić swój CSS. One naprawdę super strona jest browserlab.adobe.com. Jest to bezpłatny serwis zgasić przez Adobe. A to, co robią jest mogą wykonywać zrzuty ekranu z witryny działa w różnych warunkach - jak działa pod różnymi przeglądarkami, uruchomiony pod różne platformy - i pokazać, jak wyglądają. Wystarczy, aby pokazać, co mam na myśli tutaj, stworzył stronę internetową o nazwie zeszłym roku życia na Harvardzie, i to, co starałem się zrobić - Starałem się zrobić my.harvard lepiej. Bo jeśli były tu w zeszłym roku, my.harvard nie wyglądają jak to wygląda teraz. Wygląda rodzaju obrzydliwe. Ale teraz wygląda o wiele lepiej. Moje wykonanie nie było tak przydatne już, ale wszystkie takie same, wiesz, starałem się dodać - (niezrozumiałe) wiele, co - i wygląda - wygląda bardzo dobrze na moim komputerze. A potem, być może, gdybym miał więcej czasu to bym poszedł do laboratorium przeglądarki i bym spojrzał na, no, jak to wygląda w Chrome 18 w systemie Windows. Chciałbym przewijać i chciałbym zobaczyć - oh nie! Tabelcce ogłoszeń. Mój tekst był przepełniony. Tak, że jest źle, prawda? Jeśli użytkownik korzysta z Chrome w systemie Windows i jest na mojej stronie, że natychmiast wygląda bardzo nieprofesjonalnie. Tak, mam iść do mojego CSS i co część mojego CSS łamie tutaj. Dlaczego nie jest to wyświetlane poprawnie i naprawić to, aby wszyscy użytkownicy mogli zobaczyć tę samą stronę i być tak samo szczęśliwy. I wreszcie, dobrze, screeny przeglądarki są ładne do testowania CSS, ale co z JavaScript? A co jeśli masz trochę skomplikowany skrypt, który jest uruchomiony? Cóż, zawsze można zrobić wirtualizacji. Jeśli masz komputer Mac można użyć Bootcamp lub VMWare wirtualizacja może kopię Windows i Internet Explorer zastosowanie tam. Można też przejść do czegoś Spoon.net, które niestety działa tylko na komputerach PC. Ale to, co robią jest bardzo fajne. Oni wirtualizacji oprogramowania dla Ciebie, dzięki czemu można uruchomić różne wersje IE, na przykład. Możesz uruchomić różne wersje Firefoksa. Możesz uruchomić różne wersje Safari i przetestowania wszystkich stron tam. Niestety, nie są one wolne. Jest to usługa płatna, więc zawsze jakby to - zawsze rodzaju kompromis między tym, dobrze, ja mam zrobić mojej stronie wygląda dobrze. Jeśli tak, to muszę zapłacić za niektóre usługi, aby pomóc mi zrobić. Wszelkie pytania w tym momencie o nic, że rozmawialiśmy o? Niesamowite. Okay. Teraz mamy więcej rzeczy do powiedzenia. Jak o błędach? Jak upewnić się, że strona internetowa będzie działać nawet wtedy, gdy dzieje się coś złego? Może nie masz stronę o nazwie food.php. Ale ja go na swojej stronie i staram się przejść food.php. Czy po prostu będzie mi pokazać, że biała strona z napisem 404 - nie znaleziono pliku? Albo masz zamiar powiedzieć: "Cóż, przykro mi, że nie mogłem znaleźć to dla Ciebie, ale być może są jakieś inne środki, które pomogą Ci sprawdzić, co trzeba. " Inne błędy - tak, jest to tzw Błędy HTTP, które są tylko niektóre kody błędów że serwer może być wysłany z powrotem do przeglądarki w przypadku Coś złego dzieje. 400 - Błędne żądanie. 401 - Nieautoryzowany. 403 jest trochę wspólnego, jeśli masz katalog, który nie ma być dostępny przez użytkownika, ale użytkownik próbuje tak. A 500 - Internal Server Error - które zwykle się dzieje, gdy masz coś naprawdę źle się dzieje w kodzie PHP. Ale w każdym razie, te rodzaje przeglądarek - Tego typu błędy się zdarzają. Tak więc, w jaki sposób upewnić się, że z wdziękiem obsługiwać te błędy i upewnić się, że użytkownik nie jest tylko rodzaj wisi? Nadchodzi. Htaccess. Teraz. Htaccess jest coś, co działa na serwerów Apache, coś, co działa i działa na kilku serwerach innych również. To jest po prostu sposób, aby skonfigurować serwer tak, że można je robić, co chcesz to zrobić. Niektóre rzeczy można zrobić. Możesz kontrolować ustawienia cache. Może jest pewna strona na swojej stronie internetowej, aby upewnić się, że użytkownik ponownie pobrać za każdym razem użytkownik przychodzi i odwiedza Twoją stronę internetową. A może masz jakiś adres URL, który jest jak yoursite.com / test / html / pages / hello.html i chcesz po prostu, że się yourname.com / hello -. dobrze, można użyć htaccess przekierować jedną stronę do drugiej. Można również użyć go do zrobienia uwierzytelnienia. Może są jakieś części swojej stronie internetowej, że trzeba użyć innego hasła. Możesz blokować niektóre adresy IP, blokowanie pewnych domen. Może po prostu naprawdę nie lubię studentów Harvardu za pomocą witryny internetowej. Cóż, masz możliwość blokowania wszystkich adresów Harvard IP. Wreszcie, można traktować rzeczy - można pisać pewien kod, aby serwer traktować jak. Zhao lub. Twoje imię lub. Hello stron jako kod PHP. Może to będzie przydatne. Być może, że nie będzie. I wreszcie, można go używać do obsługi odpowiedzi błędach. Co mam na myśli? Jeśli po prostu dodać kod tak - ErrorDocument 404 i kierować je do niektórych strona błędu, możesz upewnić się, że użytkownik nie tylko zobaczyć naprawdę brzydki 404 i pokazać im coś miłego. Miejmy faktycznie przyjrzeć, jak możemy to zrobić z Pset 7. Tu jestem w moim urządzeniu. Zamierzam otworzyć Chrome, a następnie będę chciał uzyskać dostęp do strony , że nie istnieje na CS50 Finansów. Więc hosta lokalnego - cats.php--tak, zauważysz, że stworzył dokument o błędzie , który mówi, "Canz nie znaleźć Z Page!" Ma bardzo smutny kot na niego. Jeśli pójdziesz na Twitterze, jeśli go na żadnej z tych stron, nie można znaleźć stronę, zwykle starają się pokazać ładny obraz tak, że nie jesteś zbyt rozczarowany. Można też mieć coś, co jest bardziej profesjonalny, który mówi, Cóż, przykro mi, że nie może znaleźć strony, ale może tu jest pole wyszukiwania. A może są jakieś linki, które pomogą Ci znaleźć link, który chcesz. Więc jak to zrobić? Jak to jest w ogóle możliwe? Jeśli idziemy do naszego terminalu tutaj - Idę, aby powiększyć trochę - zauważyć, że mam nową stronę. Wewnątrz mojego HTML katalogu to się nazywa - nie można go zobaczyć - to się nazywa error.php. I error.php jest tylko plik, który zrobiłem , które pokazuje, że samą stronę. Mogę ci pokazać, co error.php jest. To właśnie ta strona. To mówi, "nie Oh no! Canz znaleźć Z Page!" A jeśli chcesz zobaczyć - tak, to zauważysz, że sort htaccess o to dziwne imię.. To zaczyna się od kropki, co oznacza, że ​​jest to plik systemowy. Jest to ukryty plik, który nie jest normalnie widoczne. Jeśli nie ls-a, można zobaczyć wszystkie ukryte pliki w określonym katalogu, i rzeczywiście, widzisz. htaccess jest jednym z nich. Idziemy do przodu i otworzyć htaccess. - z gedit - Boom! Mam tylko jedna linia tam - dokument Błąd na 404 błędów które znane są również jako plik--ewentualnych błędów. Chcę przekierować je do czegoś, co nazywa error.php. Można bawić się takie rzeczy jak nie canz znaleźć Z Page! I są też bardzo fajnych rzeczy, które można robić. Htaccess. Jeśli chcesz zobaczyć więcej. Htaccess magia, to jest bardzo fajna strona, aby przejść do - to się nazywa javascriptkit.com/howto/htaccess.shtml-- jeśli chcesz wykonać więcej magii serwera. A może to być bardzo zabawne. Uff! Wszystko w porządku! Więcej słodkie zdjęcia. To jest facet robi pompki, a jego kot stara się pomóc. Myślę, że to bardzo ładny. Niestety, nie mam kota takiego. Dobrze. Tak, rozmawialiśmy o. Htaccess. Rozmawialiśmy na temat obsługi błędów. Mówiliśmy o hostingu, nazwy domen. Mówiliśmy o zgodności z różnymi przeglądarkami. Teraz w jaki sposób upewnić się, że strona faktycznie wykonuje? Jak upewnić się, że jeśli pójdę na swojej stronie Widzę swoją stronę w kilka sekund? Jedną z rzeczy, które myślę, że ludzie po prostu jakby zapomnieć o jest optymalizacja obrazu. Powiedzmy, że chcesz umieścić zdjęcie na swojej stronie i to 2 MG duże. To może być dobre dla nas, ponieważ jesteśmy na Harvardzie, i mamy bardzo szybkie połączenie z Internetem. Ale wyobraź sobie kogoś w Chinach. Wyobraź sobie kogoś w Indiach. wyobrazić ktoś może na wsi Kansas, którzy być może nie są tego samego rodzaju szerokopasmowego Internetu, który mamy. Jeśli masz 2 MB zdjęcie na swojej stronie, a użytkownik próbuje uzyskać do niego dostęp, to zajmie im naprawdę dużo czasu, aby pobrać. Tak więc, jeśli nie potrzebujesz tego rodzaju uchwały, to można zmienić rozmiar obrazu z czymś Adobe Photo Shop. Jest zazwyczaj opcja nazywa bezpieczne dla sieci i urządzeń, i co robi to usuwa wszystkie niepotrzebnych informacji i rodzaju wyprasek plik w małym rozmiarze, tak aby można umieścić je na swojej stronie internetowej, a każdy użytkownik, który próbuje ściągnąć tę stronę ma zamiar pobrać mniejszą wersję obrazu. Jeśli nie masz Adobe Photo Shop webresizer.com również inny zasób, w którym można wprowadzać swoje zdjęcie i to wypluć dokładnie ten sam obraz, ale będzie to coś jak 3 razy mniejsze. Więc to jest bardzo przydatne dla użytkowników. Inną rzeczą, którą możesz zrobić, to minify kod. Jeśli spojrzeć na Google.com, zobaczysz, że nie jest to coś w rodzaju tego samego HTML i CSS, które jesteśmy przyzwyczajeni. Podobnie będzie wyglądać na kod źródłowy tutaj. Jeżeli po prostu przewinąć - wow, że wygląda dość obrzydliwe. Pozwoliłoby to uzyskać zero na stylu. Jeśli kodowane to dla Pset, otrzymasz zero na swoim stylu. To nie ma żadnego odstępu. Nazwy wyglądają naprawdę tajemnicze. To wszystko jest naprawdę obrzydliwe. A skrypt, aby zamknąć się w organizmie - HTML zamknięcia - oni wszyscy razem - wszystkie smushed razem. Dlaczego to robią? Oni minified swój kod. Zauważ, że ten dokument będzie dużo mniejszy dla mnie ściągnąć, niż coś z białej przestrzeni, niż coś z bardzo długich nazw zmiennych. Jeśli minify swój kod usuwają wszystkie białe znaki. Oczywiście, Twoja przeglądarka nie obchodzi, jeśli masz jakieś białe znaki w kodzie. Możesz rozebrać ją, teraz mogę ściągnąć mniejszy plik - teraz plik - dokument, który mamy zamiar pobrać ma mniejszy rozmiar pliku, będzie to szybciej dla mnie ściągnąć, i to jest przydatne. Jeśli pracujesz z witryn internetowych i jesteś uruchomienie strony internetowej, to prawie zawsze dobry minify kodu. Innym powodem może być dobre, jest być może nie chcesz innych do korzystania z kodu. Być może nie chcesz, aby inni korzystać z CSS. Wiesz, jeśli naprawdę chce być skąpy z tym, następnie można również minify kod, i byłoby trudniej mi go ukraść bo nie mam pojęcia, co się dzieje. Można też przejść do stron internetowych takich jak minify.avivo.si. Usługi, takie jak ta już pomóc minify swój kod tak, że nie trzeba tego robić ręcznie. Na pewno nie to zrobić ręcznie. Okay. Teraz mówimy o skryptach. Może w kodzie PHP jest coś, że nie trzeba robić. Może jest dodatkowe pętle tam. Rozmawialiśmy o konstrukcji kodu w CS50. Nawet jeśli masz kodowanie w C, jeśli masz - jeśli robisz dodatkową pracę że nie trzeba robić, dobrze, że będzie zwalniać skryptów na swojej stronie internetowej, Jest to szczególnie ważne dla stron, ponieważ użytkownicy w dzisiejszych czasach są bardzo niecierpliwi. Jeśli robisz niepotrzebnej pracy, to zajmie im dłużej aby dostać się do informacji, że chcą, a oni będą się bardzo nieszczęśliwy. Wreszcie, możesz zoptymalizować tabele bazy danych. Pamiętam, jak rozmawialiśmy o indeksach. To nie są tylko dobre dla upewniając się, że masz wiersz, który jest niepowtarzalny. Są również dobre dla upewniając się, że baza danych działa szybko. Jeśli chcesz poczytać o tej podróży do dokumentacji MySQL, Można też spojrzeć na - dobrze, jak zoptymalizować tabeli bazy danych? Jak mogę się upewnić, że mam wskaźników, które pomogą mi dostać się do informacji szybciej? Są też małe sztuczki, które można używać jak buforowanie. Jeśli masz PHP - jeśli masz bloga, na przykład, i masz - i to wspierany przez PHP lub innego języka - można buforować bloga na powiedzmy 50 minut przerwy, tak że można służyć statycznych stron lub statyczny HTML do użytkowników witryny. Dzięki temu użytkownicy nie muszą uruchomić skrypt PHP za każdym razem, i być może, że będzie szybciej im dostępu do tych informacji. I wreszcie, można użyć coś jak CDN. Zauważ, że przy każdym pobieraniu Pset, zawsze iść do CDN.CS50.net. Dlaczego tak jest? CS50 korzysta także rodzaj jakby CDN - sieć dystrybucji treści - co oznacza po prostu, że jest kilka serwerów, może gdzieś na całym świecie że pomoc służyć stron dla odwiedzających. Jeśli użytkownik jest coraz stronę z serwera, który znajduje się bliżej nich geograficznie, to najprawdopodobniej użytkownik dostanie ten plik o wiele szybciej. Istnieją również źródła internetowych, które pomogą Ci to zrobić. Jednym z nich jest CloudFlare. Oferują bezpłatne usługi CDN. Jeśli masz duże pliki, czy służących do użytkowników, to może lepiej, aby umieścić je na CDN tak, że mogą się do nich dostać szybciej. Ostatnim tematem na dzień jest search engine optimization. Co to jest pozycjonowanie stron internetowych? To zapewnienie, że wyszukiwarki takie jak Google czy Bing czy Yahoo może przejść do witryny i indeksowania witryny i indeksują witrynę i kiedy I, na przykład, przejść do Google.com i staram się szukać czegoś, następnie witryna pojawi się. Jak upewnić się, że witryna jest jednym z top 10? Bo jak wszyscy wiemy, jeśli szukasz czegoś w Google i to nie jest na najwyższym 10 ty najprawdopodobniej nie będzie wyglądać w następnym 10. To jest coś w rodzaju ankiety, która jest owiana tajemnicą. Jest dużo szumu tam w Internecie. Istnieje wiele przesądów na temat jeśli nie x wtedy Google będzie jak lepiej. Jeśli nie y wtedy Google będzie jak lepiej. To chyba lepiej zajrzeć do szukania giganta dokumentów siebie. To jest jeden z dokumentów w Google, które mówią dokładnie, jak zoptymalizować witrynę tak, że Google może uzyskać dostęp i index to bardzo ładnie. Nie musisz skopiować ten adres URL w dół, ponieważ prezentacja będzie być już tak. Jeśli spojrzeć na to i to czytasz jest kilka bardzo pomocnych wskazówek tam. Google informuje, - jeśli naprawdę chcesz witryny mają być indeksowane oraz następnie należy zrobić wszystkie te rzeczy. Inna sprawa, że ​​wyszukiwarki naprawdę lubię to nowe treści. Jeśli treść, która jest aktualizowana bardzo regularnie następnie wyszukiwarki powiedzieć, ooh, lubię swoją witrynę. Mam zamiar iść do swojej strony bardzo często. Idę do indeksu wiele stron. Jeśli masz nowe treści to jesteś bardziej prawdopodobne, aby pokazać się - jesteś bardziej prawdopodobne, aby być bardziej istotne. Jesteś bardziej prawdopodobne, bardziej aktualne, i wyszukiwarki są bardziej prawdopodobne, aby umieścić witrynę nad innymi. Głębokie linki są również ważne. Jeśli naprawdę chciał witryny dobrze wyglądać w wyszukiwarce oczu mają wiele innych witryn z nią powiązane i połączone głęboko na swojej stronie. Nie tylko link do strony głównej. Link to może yourname.com / coś / coś / something.php. To - do wyszukiwarki - oznacza, wow, mają naprawdę interesujące treści że ktoś inny jest łączenie tak głęboko w ich stronie, że powinienem naprawdę położyć większy nacisk na tej stron witryny. Jeśli masz dokładnych tytułów stron, jeśli nie masz błędów to dobrze, bo jeśli wyszukiwarka stara się odwiedzić witrynę, a robi się błąd, to pewnie da się bardzo, bardzo szybko. I w końcu, chcesz mieć szybki czas ładowania, ponieważ wyszukiwarki - podobnie jak ludzie - don't mają dużo cierpliwości dla wolnych stron. To jest droga dla Ciebie, aby upewnić się, że pojawiają się wyżej w sprawdzić silnik i mam nadzieję, że pytania w ten sposób uzyskać więcej ruchu. Bo przecież spędziłem cały czas rozwija swoją stronę. Spędziłeś cały ten czas uruchomienia tej strony internetowej. Chcesz, aby upewnić się, że masz mnóstwo użytkowników, którzy rzeczywiście zobaczyć zawartość. Inne dobrych zasobów korzystać. Google Webmaster Tools jest coś, spojrzeć w do. To po prostu pomaga zobaczyć - Google nie jest indeksowanie mojej strony. Jakie rodzaje błędów jest to napotykają? Ile stron ma to indeksowane? Co to, że najważniejsze treści na mojej stronie? Może to nie jest to, co chcę go mieć. Może trzeba zmienić moją stronę trochę tak, że to odbicie lepiej co moja strona internetowa jest naprawdę. Google Analytics to kolejny naprawdę fajne narzędzie. Możesz dodać trochę JavaScriptu do stron. A potem potem można przejść do Google Analytics i będzie śledzić Twoje dane demograficzne gości i twój wzrost site. Będzie on powiedzieć dokładnie, ile osób odwiedzi witrynę w określony dzień w danej godzinie, w określonym tygodniu. Ile goście z Chin? Ile goście z Antarktydy - dostajesz na swojej stronie internetowej. to może być coś fajnego, aby zobaczyć czy to może być nawet przydatne ponieważ starasz się kierować pewną grupę. Może starasz się kierować nastolatków z witryny internetowej, a zobaczysz, że większość odwiedzających witrynę są być może 30 - do 40-latków, to może albo masz problem lub po prostu powiedzieć, dobrze, to może należy po prostu zmienić mojej stronie ostrości tak, aby I skupić się na tej grupie wiekowej. Google Apps - jeśli chcesz mieć coś w rodzaju e-maile z nazwą domeny - Być może coś jak yourname@yourname.com-- można używać adresów Gmail - można użyć usługi Gmail i Google Apps jest jednym ze sposobów, aby to zrobić. Możesz ustawić konkretne adresy e-mail, które są specyficzne dla danej domeny zamiast of@gmail.com. I wreszcie, istnieje internetowych Developer Extensions i dodatki - dla Chrome, dla przeglądarki Firefox, w innych przeglądarkach - które pozwalają wejść i sprawdzić CSS, sprawdzić JavaScript, zobaczyć dokładnie to, co jest złego w skrypcie JavaScript, a może to będzie przydatne dla celów de-podsłuchowych, bo dowiedzieć się - dobrze, to dlaczego nie moja strona jest wyświetlana poprawnie w tej przeglądarce? I wreszcie, jeśli chcesz dowiedzieć się więcej o wszystkich tych tematów - jeśli chcesz dowiedzieć się więcej o HTML i CSS i JavaScript - bo przecież my tylko nauczył cię trochę - można przejść internetowych, takich jak W3Schools.com szukać więcej środków. Mają bardzo ładne tutoriale, jak mam zrobić X, lub co ma y oznacza? Jeśli chcesz dowiedzieć się więcej o tych językach można po prostu udać się tutaj. Dobrze. Myślę, że chciał opuścić kilka ostatnich minut to za pytania, więc czy są jakieś pytania o cokolwiek, że rozmawialiśmy o? [Członek publiczności] Jakie rzeczy są na W3Schools i jak jest pokryte? [Yuechen Zhao] Jakie rzeczy? Tak więc, jednym z bardzo największych rzeczy, które używają dużo jest ich odnośników. Ich szczegóły odniesienia, na przykład dla CSS - co to znaczy, czy chcesz zmienić tło strony - w jaki sposób to zrobić? Jakie przeglądarki obsługuje tego polecenia? Takie rzeczy. I wtedy też po prostu bardzo ładne tutoriale na HTML, o PHP, na JavaScript, na MySQL, na wszelkiego rodzaju różnych tematów. Mają ładne tutoriale. Uczą się, jak robić rzeczy. Miło jest być w stanie iść i dowiedzieć się więcej na temat tych zagadnień. [Członek publiczności] HTML 5 nie jest jeszcze kompatybilny ze wszystkimi przeglądarkami tam. Polecane tylko pobyt z dala od niego z powodu problemów ze zgodnością? Jak można sobie z tym poradzić? [Yuechen Zhao] Tak, tak, to pytanie jest HTML5 jest jeszcze standardem dziecko. To naprawdę nie jest obsługiwany przez wiele przeglądarek, więc powinniśmy go uniknąć? Myślę, że w zeszłym roku byłbym bardzo duży zwolennikiem, niech uniknąć HTML5 ponieważ jest jeszcze - to wciąż bardzo nowa i w rzeczywistości, HTML5 standardowa nie został jeszcze zakończony. I tak naprawdę nie ma żadnego standardu HTML5. Ale myślę, że zwłaszcza jeśli projektowania strony internetowej, teraz, może być lepiej, jeśli po prostu iść z HTML5, ponieważ jest to rodzaj będzie w przyszłości, a jeśli chcesz, aby Twoja strona internetowa jest przyszłościowe i chcesz, aby Twoja strona internetowa do pracy w przyszłych przeglądarek, może lepiej zacząć coś na budowę przyszłości niż w przeszłości, a także po prostu ze względu na fakt, że HTML5 naprawdę nie różni z HTML4 lub XHTML. Jeśli używasz HTML5, to zwykle działa w większości przeglądarek. Musisz tylko do rodzaju wejść i upewnić się, z tych screenów i upewnić się dzieje na tych stronach siebie. Ale najprawdopodobniej to będzie działać, chyba że używasz bardzo specyficzne funkcje HTML5. Zauważ też, że dla CS50 - na przykład do odtwarzacza wideo, którego używamy - używa wideo HTML5 i HTML5 do wyświetlania wykłady. Ale jeśli masz naprawdę starą przeglądarkę, a następnie będzie ona polegać na Flash. Tak, to też jest coś innego - mieć awaryjną systemu po prostu wiem, że przeglądarka nie będzie obsługiwać co chcesz go obsługiwać. Inne pytania? Wszystko, co mówiliśmy. Dobrze. Wtedy myślę, że to o niej jest dla mnie. Myślę, że to jest to. (Oklaski) Spoko. [CS50.TV]