[Powered by Google Translate] [Семинар] [Подготовка на вашиот сајт за Веб] [Yuechen Жао] [Универзитетот Харвард] [Ова е CS50.] [CS50.TV] Во ред. Еве уште еден час на веб развојот ако вие момци се регистрирате за тоа. Денес јас одам да се зборува за подготовка на вашиот сајт за веб. Цел ден - и веројатно за последните 2 недели - Ние се зборува за тоа како да креирате веб страница, како да се користи HTML, како да го користите PHP, како да се користи рамки, како да бидете сигурни дека можете да комуницирате со базата на податоци - работи како што. Но, денес, ние ќе треба да се зборува за тоа каде вашиот сајт се случува да се живее по CS50. Бидејќи по сите, CS50 не се случи минатото декември. Ние ќе се зборува за имиња на домени, хостинг. Ние ќе се зборува за она што крос-пребарувачот компатибилност и крос-платформска компатибилност се, и како можете да бидете сигурни дека вашиот сајт се случува да работат под сите услови. Ќе зборуваме за справување со грешки и други серверот магија. Ние зборуваме за перформанси оптимизација, барај оптимизација, и како да се добие на луѓето да всушност посетат вашиот веб-сајтови. И, конечно, само некои добри ресурси за да бидете сигурни дека вие момци имаат доволно од оние да одам со вашиот конечниот проект, и се надевам дека после. Првото нешто што ние ќе треба да се зборува за е имиња на домени. Токму сега сте програмирање во вашиот апарат, си оди на локалниот компјутер кој всушност и не е име на домен. Тоа е вид на само прекар или алијас за вашиот вистински Линукс инсталација во внатрешноста на или на VMware на Mac или VMware плеер на PC. Домен имиња ќе ви овозможи да се стави еден сајт со излез на веб, а потоа одат на нешто како www.google.com и да добиете на веб страната. Како функционираат тие? Да речеме дека сте само просечен веб сервер - Просечната веб-сурфер и имаш лаптоп, и ќе отидете на www.howstuffworks.com. Што веројатно може да се види каде што ги украдов ова од. Како работи работи - вашиот компјутер тогаш ќе побара локалните DNS сервер, "Дали знаете каде овој веб-сајт е?" "Дали знаете IP адресата на www.howstuffworks.com?" Вашите DNS сервер може да се каже, "Да, сакам." Во тој случај, ќе го добиете IP адреса, и вашиот компјутер пристапи таа IP адреса. Ако тоа не се случи, тоа бара друга DNS сервер, "Еј! Знаете ли што е www.howstuffworks.com е?" Тој сервер може да се каже, "Да, сакам." Значи, таа му кажува на другиот она што е, и, конечно, дека оваа информација ќе поминуваат преку вашиот компјутер, и можете да пристапите howstuffworks.com. Како може да се добие една од овие магични работи? Како можете да добиете, можеби www.yourname.com или www.ilovecats.com? Можете да се регистрирате за еден, и постојат многу веб-сајтови таму кои ви дозволуваат да го стори тоа. Мора да - во повеќето случаи ќе мора да плати за нив. Постојат одредени имиња на домени кои се бесплатни. Ако одите на www.co.cc или. Tkdomainnames, оние кои се бесплатни. Но, тие не доаѓаат со одредени ограничувања, а всушност некои од нив дури и не би можеле да бидат вистински, највисоко ниво на имиња на домени како. com или. нето. Нормално јас би навестиле ќе за една од нив затоа што корисниците се само повеќе удобно со нив. Сте виделе многу. Coms. Сте виделе многу. Мрежи. Најверојатно не сум ја видел многу. Co.cc-тите, па тие се потешко е да се запамети. Различни веб-сајтови како GoDaddy или NameCheap или - Јас се користи оној кој е вид на површни - наречен activedomain.com. Тоа изгледа навистина површни, но тоа е работел навистина добро за мене. И конечно, ќе имаат други кои можеби направи повеќе реклами како мрежни решенија. Но ако излегуваме NetworkSolutions.com и се погледне во нивните цени тоа е навистина скапо. Гледав во нив минатата ноќ. За една година на име на домен, тоа е веројатно не вреди толку пари. Всушност, ако сте добивање на. Com или. Org или. Нето вообичаените цена е околу $ 10 годишно. Значи, ако сте плаќаат многу повеќе од тоа, тоа не е веројатно дека достоен за тоа затоа што, после сите овие веб-сајтови не прават ништо со овој домен име. Тие само го даде за вас, а па ако може да го добие за евтини, зошто да не? Од друга работа е кога ќе имаат вашиот домен име, тогаш веројатно ќе сакате да го одат за да било Godaddy.com или каде што си ја купил вашиот домен име и го постави на името сервери за овој домен име. Што значи тоа е еднаш корисникот оди www.howstuffworks.com, оние името на серверот ИП адресите се на IP адреси кои тие ќе бидат во можност да се погледне нагоре. Тие ќе бидат во можност да пристапите до вашиот сајт преку оние името сервери. Ако поднесете барање за хостинг некаде тогаш вашиот домаќин, најверојатно, ќе ви даде името сервери за употреба. И конечно, тука е тоа нешто наречен WHOIS. База на податоци WHOIS е база на податоци со кои можете да внес на име на домен и тоа ќе плукаат некои информации за сопственикот на овој сајт и други информации за контакт. Сега, може да се каже, "Јас навистина не би сакал мојата домашна адреса или јас навистина не би сакал мојот е-мејл адреса на веб страната за секој да ја видите или на интернет за сите да видат. " Тогаш можеби ќе сакате да го користите нешто што многу од хостинг услуги обезбеди - како менаџер WHOIS. А менаџер WHOIS е само уште една услуга која многу од нив се обезбеди дека крие далеку дека информациите и само го става во кој е менаџер за името - за адреса тоа е обично само дека името на компанијата што ти има дадено овој домен име - и така тогаш вашите лични информации не е се протекоа на интернет, што е обично прилично добар. Јас користите една од овие услуги. Ако не се грижат за вашата приватност тогаш тоа не е важно. А DNS сервер се залага за Domain Name System, и она што е - тоа е вид на како хаш табелата некаде во која се вели,  "Ова адресата на веб страната се случува да се на сајтот на оваа IP адреса." И тоа е сè што е. Значи откако ќе побарување оваа DNS сервер, тогаш може да добиете на IP адреси за кои соодветната име на домен, а потоа посета на овој вебсајт. (Публиката член поставување на прашањето - нечујни) Првиот? Првото ниво всушност е обично само вашиот компјутер кеш себе. Вашиот компјутер вид на сеќава кога последен пат дека ќе отиде на www.google.com тоа беше во тоа IP адреса, а потоа по некое време, кои кешот ќе истече, и дека ќе побара како Comcast DNS, "Еј, што е www.google.com?" Нормално, кога ќе купите домен и да се регистрирате еден, а ќе се постави веб-сајт, вие не може да оди на таа веб страница веднаш со тоа име на домен, бидејќи името сервери низ целиот свет не знаат за вашиот домен име сеуште. Таа треба да се доверат. Тоа обично трае околу 24-48 часа. Сите во право. Значи, тоа е малку за имиња на домени. Тие се многу кул. Мислам дека треба да се добие една ако сте сериозни во врска со проектот и ако навистина сакаат да направат вашиот проект позната низ кампусот, имаат домен прави да изгледа навистина професионалец. Тогаш следниот чекор, се разбира, е да се има некој вид на хостинг. Ако само го домаќин на вашиот компјутер, никој не некогаш ќе биде во можност да одат за тоа. Што потенцијално може да се постави на сервер на вашиот компјутер и да ја задржите вашиот компјутер вечно, Но тоа не е препорачливо. Постојат различни видови на хостинг онлајн располагање. Има дели хостинг. Има VPN (неразбирливо), кои се виртуелни хостови. Има полу-посветен и посветен. На последниот 3, VPN, полу-посветен, и посветен се обично поскапи. Тие обично се користи за веб-сајтови кои бараат повеќе ресурси. Ако сте само почетна надвор со веб-сајт, тоа само може да биде поекономично да одат со заеднички хостинг. И она што дели значи е само еден куп на веб-сајтови се сите заедно сортирање на на еден сервер на овој веб-сајт на оваа сервер, и можете да пристапите до вашиот сајт преку домен име. Постојат голем број на популарни Силите таму. HostGator и DreamHost - тие се многу, многу голем и многу, многу популарен и многу, многу успешни. Јас лично користам еден вика MDDHosting. Ако одите на www.mddhosting.com, тоа е мојот домаќин на изборот. Мислам дека тие се многу добри. Тие отсекогаш биле многу сигурен, и јас никогаш не сум имал никакви проблеми со нив. Тие исто така имаат многу конкурентни цени. Две што јас не навистина ми се допаѓа се GoDaddy - тоа е исто така многу популарен домаќин, но јас сум имал страшно искуства со нив, и голем број на луѓе кои ги знам сум имал навистина страшно искуства со нив. Тие вид на одат по луѓето кои не знаат она што го правиш - можеби сте во изработка на веб страница за прв пат, и така тие вид на нив един во купување на нивните хостинг пакет. Не го прават тоа. Не падне за тоа. Одат да бараат други хостинг пакети кои навистина одговара на вашите потреби. А другиот е - постојат бесплатни хостови таму. Постојат веб-сајтови кои ќе биде домаќин на вашиот веб-сајт за бесплатно - понекогаш со ставање на реклама на вашиот сајт, понекогаш со тоа што ќе учествуваат во нивните форуми, но понекогаш и само така бесплатно. Но, бидете внимателни со бесплатни хостови, бидејќи многу од нив навистина само одат надвор од бизнисот по неколку месеци. Вие не може да држи чекор со трошоци. Други се само многу несигурни, и вашиот сајт секогаш ќе биде долу, а вие не сакате тоа да се случи. Секој домаќин ќе им понуди свој контролен панел. Забележите дека за вашиот апарат, навистина не е контролниот панел сама за себе. Мора да се користи терминал за да одат и уредување на датотеки. Што треба да chmod нешта со себе. Ако си сакал да одат на phpMyAdmin, треба да се оди на локалниот компјутер @ / phpMyAdmin и работи како што. Но со контролен панел можете да одат во и уредување датотеки на вашиот сервер со Windows Explorer или Пронаоѓач-тип на апликација. Или можете да одите преку и се погледне во вашите бази на податоци со свои алатка наместо на phpMyAdmin. Значи, има многу на избор тука, а некои од популарните контролните панели се таму горе. Но, ако сте во потрага за домаќин, тогаш можеби ќе сакате да се погледне во она што видови на персонализации и опции тие нудат мене да се прилагодите мојот сервер и да направам мојот вебсајт работи подобро. Така, тогаш можеби ќе прашате: "Па, како можам да одберете хостинг?" Ако одите за да било домаќин веб-сајт, има многу на жаргон, и постојат многу опции. Постојат голем број на различни цени, исто така. Нормално јас одат за поевтини оние само затоа што веб-сајтови кои можеби јас и ти направи - а особено сега, особено како стартери - тие не може да се стави како многу ресурси како може еден веб-сајт како Microsoft.com. Прво ќе сакате да се погледне на оперативниот систем, ако сте навистина љубопитен дали вашиот сајт се случува да биде домаќин на Linux, на Windows, или на Mac. Нормално ние само одиме со Linux, бидејќи тоа е обично е и најефтино, а исто така и оној што можеби вие момци се повеќе запознаени со, бидејќи на апаратот. И тогаш, можеби и тие ќе се стави некои ограничувања на износот на пропусниот опсег дека ќе го добиете - како колку мегабајти или гигабајти на податоци на корисниците може да го симнете од вашиот вебсајт месечно? Или простор на дискот. Колку простор добивате? Тоа е 500 MB? Тоа е 2 GB? Тоа е неограничено? Денес, голем број на веб сервери ви даде неограничен простор на дискот, како начин за нив да ви примами да се добие нивниот хостинг пакет. Но, ако навистина мислиш за тоа, кога се што некогаш ќе треба неограничен простор на дискот? Ако имате неколку HTML датотеки, неколку на PHP, неколку слики - тоа е само неколку мегабајти, и така обично јас само оди за вреди можеби неколку гигабајти "на просторот, и дека би можел да биде доволно за да ме започнете додека ми треба повеќе. Конечно, тие можат да стави ограничувања на она што вид на - колку бази на податоци може да имате. Можеби ти да имаш само 1 база на податоци. Можеби ќе може да има 2. Можеби може да имаат 10. Тоа е навистина важно за вас колку ќе добијам? Работи што треба да се запрашате. А потоа, конечно, само работи како јазици. Дали тие поддршка PHP? Дали тие го поддржуваат MySQL? Повеќето хостинг веб-сајтови не ги поддржуваат овие затоа што тие се бесплатни. Тие се со отворен код. Тоа не ги чини ништо да ги обезбедат овие за вас. Но, ако сакате да го користите, да речеме, Руби или Пајтон или некои од овие други јазици - тие не можат да го поддржат на нивните сервери, така што е важно да се погледне за оние видови на нештата. И, конечно, дали тие ќе ви овозможи да направите некои понапредни работи како SSL или cron работни места? SSL е опција каде што може да направи вашиот сајт повеќе безбедна со тоа што го HTTPS и шифрирате вашите врски. И Cron работни места се само можеби скрипти што сакате да се кандидира на секои 5 минути, секои 10 минути, на секои 15. А многу заеднички хостинг веб-сајтови не се стави ограничувања основа на бројот на cron работни места кои можете да се кандидира затоа што зазема повеќе ресурси. И, конечно, само се друго што сакате да се погледне во - бидете сигурни што точно се случува пред да ја купите вашиот хостинг пакет. И, конечно, перформанси. Перформанси е огромна. Колку брзо е мојот веб-сајт случува да се кандидира? Повеќето корисници не се случува да се чека за дури секунди за вашиот сајт да се кандидира пред тие само се добие досадно, и тие одат за да MeanBase и да почне да гледа во слики на мачки - знаете што се случува, и ако сакате да бидете сигурни дека ќе добиете дека корисникот на одборот и дека имате добра uptime што само значи дека Вашиот веб-сајт нема да биде достапна на сите времиња. Многу Силите имаат навистина лош uptime и дека само значи дека вашиот сајт нема да биде достапни, а вие не сакате тоа да се случи, бидејќи може да биде тажен. И ти исто така може да се следат перформансите на вашиот домаќин со веб-сајтови како Pingdom.com или домаќин-tracker.com, а тие само ви каже колку често е вашиот сајт надолу. И конечно, дека сакате да го видите за нивната поддршка. Ако имате проблем се тие случува да ви одговориме во рок од 24 часа? Дали тие ќе ви одговориме во рок од 48 часа? На хостинг сервис кој јас го користам нормално реагира на мене рок од неколку минути што е навистина убаво. Whew! Сите во право! Тоа е време за пауза. Но јас не одам да го даде за вас. Ние само ќе се погледне на слики од симпатична мачки на секои сега и тогаш. Друга навистина, навистина голема работа е крос-пребарувачот компатибилност. Што мислам кога го велам крос-пребарувачот компатибилност? Знаете, во денешно време тоа не е само на Microsoft Internet Explorer. Тоа не е само Mozilla Firefox или Safari. Сега имаме Хром. Имаме опера. Имаме Делфин. Имаме Camino. Имаме Освојувачот. Имаме сите овие различни пребарувачи. Работи кои се излегува сега - RockMelt - иако тие се сите базирани на хром. Но факт на предметот е, таму не е само еден интернет пребарувач повеќе. Вие не сте само гледање на овие веб страни со една апликација. И така, различни прелистувачи ќе одговори на различни HTML, различни CSS, и различни вклучите Javascript поинаку, и како да се справи со тоа? И, во одредени случаи, што навистина не може. Својата веб-страница - ако се работи во еден интернет пребарувач, кодот што го напиша нема да работи во друг интернет пребарувач, и тоа е твоја работа да бидете сигурни дека кодот кој ти напишам е универзален, дека тоа функционира секаде. Значи, ова е навистина опасно. Ако се каже: "Па, тоа е работа на мојот компјутер. Одлично! Ајде да се движат натаму." Па, тоа е веројатно нема да работат на рудникот, а кога ќе одат на вашиот сајт Одам да биде многу тажна, а јас ќе одам да ја напушти веднаш. Значи, ајде да видиме како може да се спречи ова. Првото нешто што, се разбира, е да се користат само стандардни HTML, CSS, и JavaScript. Што мислам кога го велам тоа? Па, постојат многу не стандардни работи таму. На пример, во CSS постојат многу верзии. Ако видите било CSS правила со-moz-или-WebKit-, тие правила се специфични за двете пребарувачи Mozilla и Webkit прелистувачи, па така сакате да бидете сигурни дека можеби сакате да се избегне оние работи бидејќи ако користите-moz-тоа правило е само нема да работи на Firefox. И ако навистина го сакаат да изгледаат добро на Internet Explorer, исто така, сте ќе биде надвор од среќа. За HTML, исто така, може да се прават работите во HTML, кои работат во еден интернет пребарувач но тоа паузи во друга, и ако сакате да се избегне дека колку што е можно. И конечно за JavaScript па дури и - постојат многу верзии на JavaScript, и ова лето ние се стрча во проблем каде Document.getElementsByClassName-- кој обично е функција која е дефинирана како дел од вклучите Javascript-стандард - не беше да се најде во Internet Explorer 8. Значи, во текот на летото бев на работа во лабораторија и бевме градење онлајн експерименти. И мислевме дека тоа беше работа навистина добро додека не сфативме корисници кои беа користење Internet Explorer 8 не можат да ги достават своите резултати. Бевме пропуштаа на многу податоци. Што нè направи навистина тажно. Значи, вие секогаш сакате да бидете сигурни дека вашите скрипти се случува да работат насекаде. И конечно, користете validator.w3.org што е она што ние ви кажам да се направи во pset 7. Бидете сигурни дека вашите страници се потврдени. Тоа е важно затоа што тоа барем е прв чекор разумност проверка. Е мојот код, всушност, компатибилен со стандардите? Друг начин да се најде на ви помогне да бидете сигурни дека вашиот сајт е оди на работа Во повеќето случаи е да можеби користите некои библиотеки и рамки затоа што овие навистина паметни програмери да си помисли за овие прашања за вас. Тие поминале низ и тие сум напишал различни функции кои работат преку прелистувачи. На пример, ние ги користиме jQuery во Pset 7. И покрај тоа што не може да го види, jQuery обезбедува голем број на функции кои инаку вие ќе треба да се пишува. Но тие програмери го напишал, и тие се сигурни дека тоа функционира во сите прелистувачи. И подигање - што е уште една рамка CSS дека ние ви покажа во Pset 7 - тоа навистина го намалува многу главоболки со дизајнирање веб-сајтови кои изгледаат добро. во сите прелистувачи. И конечно, ако може да се избегне тоа, јас обично се избегне кодирање од нула. Ако сте само создавање на веб-сајт за вашето училиште клубот, на пример, и сите што треба да направите е да се прикаже неколку страници, а можеби и имаат вашиот претседател да одат во и промена на неколку работи тука и таму - таму е навистина нема потреба да се код кој до себе. Кој ги зема многу од вашето време. Таа ги зема многу од вашата енергија, и ти мора да одат преку и треба да се дознае, добро, е ова се случува да изгледаат добро во овој интернет пребарувач, е тоа ќе изгледа добро во овој интернет пребарувач. Можеби се користи некои од овие закрпи што другите веќе напишано за вас, како WordPress или Џумла или Друпал. Тие се нарекуваат содржина - овие се наречени CMSs кои во основа се само пакети кои веќе дојде направено за вас, и можете да ги преземете, стави ги на вашиот сервер, и ги прилагодите сепак сакате, а вие веќе имаат трчање веб-сајт. Оние код пакети се нешто да се погледне во. Овие работи се со отворен код, освен ако не се обратите за нешто како - ако сте во потрага за еден вид пакет, постојат нешта кои не се слободни како VBulletin или IP.Board. Ако не ти требаат некои од овие напредни опции, секогаш може да се одлучат за бесплатна опција. И, конечно, не постои тоа избегнувајќи. Мора тест, тест, тест. Мора да ги тестираат вашите кодот на сите овие прелистувачи и на сите овие платформи. А ти знаеш, IE6 - Ви благодариме добрина луѓе почнаа движат подалеку од IE6 затоа што назад во текот на денот, можеби пред неколку години, веб програмерите мораа да секогаш, и секогаш, секогаш помошник на слабостите IE6 е во следењето на стандардите. Веб-сајтови само погледнав вид на 1990-тите поради недостаток на подобар начин да се справи со неа. Исто така можете да го користите пребарувач screenshot-и да се провери вашиот CSS код. Една навистина кул веб-сајт е browserlab.adobe.com. Ова е пофална услуга се стави надвор од Adobe. И она што го прават е дека тие можат да ги преземат слики од екранот на вашиот веб-сајт работи под различни услови - како работи под различни прелистувачи, која тече под различни платформи - и ќе покаже она што тие изгледаат. Само за да ви покаже што сакам да кажам тука, јас создаде веб-сајтот минатата година, наречено живот на Харвард, и она што јас се обидував да се направи - се обидов да се направи my.harvard подобро. Бидејќи ако беа тука минатата година, my.harvard не изгледа како што изгледа сега. Тоа изгледа вид на одвратно. Но сега изгледа многу подобро. Мојата имплементација не беше толку корисни повеќе, но сите се исти, знаеш, јас се обидував да го додадете - (неразбирливо) многу што - и тоа изгледа - таа изгледа многу добро на мојот компјутер. И тогаш, можеби ако јас би имале повеќе време би се качил на пребарувачот лабораторија, и јас би го погледна, и, како тоа изгледа во Хром 18 на Windows. Јас би движете се надолу и јас би се види - О, не! Погледни го кутија пораки. Мојот текст бил преполн. Значи, тоа е лошо, нели? Ако корисникот е користење на Хром на Windows и доаѓа на мојот вебсајт, дека веднаш изгледа многу непрофесионално. Значи, треба да одам во мојот CSS и да дознаете што дел од мојот CSS е кршење тука. Зошто не е тоа прикажување правилно и да ја поправите тоа, така што сите корисници може да се види на истата веб-страница и да биде само како среќни. И конечно, добро, интернет пребарувач screenshot-и се убаво за тестирање на вашиот CSS код, но она што за вашиот JavaScript? Она што за ако имате некои комплицирани скрипта, кој е трчање? Па, секогаш можете да направите виртуелизација. Ако имате Mac можете да го користите Bootcamp или VMware да virtualize можеби копија од Прозорци и употреба на Internet Explorer таму. Или, можете да одат за да се нешто како Spoon.net, кој за жал работи само на компјутери. Но, она што тие го прават е многу кул. Тие виртуелизација софтвер за вас, па можете да го извршите различни верзии на IE, на пример. Можете да го извршите различни верзии на Firefox. Можете да го извршите различни верзии на Safari и пробате сите ваши веб сајтови таму. За жал, тие не се слободни. Дека е платена услуга, па секогаш има вид на ова - секогаш има вид на оваа пласирам меѓу нив, добро, сум јас ќе направам мојот вебсајт изгледа добро. Ако е така, јас можеби ќе мора да плаќаат за некои услуги да ми помогне да го направите тоа. Било какви прашања во овој момент за нешто што ние разговаравме за? Страшни. Во ред. Сега имаме повеќе работи кои треба да се зборува. Како за грешки? Како да бидете сигурни дека вашиот сајт ќе работат дури и кога нешто лошо се случува? Можеби немаат страница насловена како food.php. Но мене, одам до вашиот веб-сајт и јас се обидувам да пристапите food.php. Дали сте само ќе ми покаже дека белата страница, која вели 404 - Датотеката не е пронајдена? Или ви се случува да се каже: "Па, Жал ми е што не можев да најдам тоа за вас, но можеби тука се и некои други ресурси да ви помогне да пребарувате за она што ви треба. " Други грешки - така, ова се нарекува HTTP грешки, кои се само некои грешка кодови дека вашиот сервер може да ги испрати назад до прелистувачот во случај на нешто лошо се случува. 400 - Bad Request. 401 - Неовластено. 403 е вид на заедничките кога имате директориумот, која не би требало да се пристапи од страна на корисникот, но корисникот се обидува да во секој случај. И 500 - Внатрешна грешка на серверот - што обично се случува кога имате нешто навистина лошо се случува со вашиот PHP код. Но, во секој случај, овие видови на интернет прелистувачи - овие видови на грешки се случуваат. Значи, како да бидете сигурни дека ќе благодатно се справи со овие грешки и бидете сигурни дека корисникот не е само вид на бесење таму? Тука доаѓа. Htaccess. Сега,. Htaccess е нешто што функционира на Апачи серверите, нешто што функционира и работи на неколку други сервери, како и. Ова е само начин за да го конфигурирате Вашиот сервер, како што можете да направите таа да правите што сакате тоа да се направи. Некои работи што можеше да стори. Вие би можеле да го контролираат вашиот кешот поставувања. Можеби има одредена страница од вашиот веб-сајт што ќе бидете сигурни дека корисникот преземете повторно секој пат кога корисникот доаѓа и посети на вашиот веб-сајт. Или можеби имаш некои URL, кој е како yoursite.com / тест / html / страници / hello.html а вие само сакате тоа да биде yourname.com / здраво -. добро, можете да го користите htaccess да ги пренасочи еден веб страница на друг. Исто така можете да го користите да се направи проверка. Можеби постојат некои делови од вашиот веб-сајт кој ќе треба да користите друг лозинка. Можете да го блокираат одредени IP адреси, блокираат одредени домени. Можеби само навистина не ми се допаѓа Харвард студенти го користите вашиот веб-сајт. Па, имаш опција на блокирање на сите Харвард IP адреси. Конечно, можете да се третираат работи - можете да го напишете одреден кодот да се направи вашиот сервер третираат како. Жао или. Вашето име или е. Здраво страници како PHP код. Можеби тоа ќе биде корисно. Можеби тоа нема да биде. И, конечно, можете да го користите да се справи со грешка одговори. Што мислам кога го велам тоа? Ако едноставно додадете кодот вака - ErrorDocument 404, а потоа директно од нив да некои грешка страница, можете да бидете сигурни дека корисникот не само да видите навистина, навистина грди 404 и да им покаже нешто убаво. Ајде да всушност ги погледне во тоа како ние да го направите со вашиот Pset 7. Еве, јас сум во мојата апаратот. Одам да се отвори Хром, а потоа јас ќе одам да се обидат да пристапат на страница дека не постои CS50 финансии. Значи, локалниот хост - cats.php--така, забележи дека јас направивме грешка во документот која вели, "Canz не најдете z страница!" Таа има многу тажен мачка на неа. Ако одите на Твитер, ако одите на било кој од овие други сајтови, не можете да најдете некоја страница, тие обично се обиде да ви покаже една симпатична слика така што вие не сте премногу разочарани. Можете исто така би можеле да имаат нешто што е повеќе професионална, која вели, добро, Жал ми е што не можевме да најдеме страната, но можеби тука е поле за пребарување. Или можеби тука се и некои линкови кои ќе ви помогнат да го најдете на линкот што го сакате. Значи, како не сум го направил тоа? Како е ова можно дури и? Ако одиме во нашиот терминал тука - Јас сум само ќе да зумирате малку - забележите дека имам нова страница. Внатрешноста на мојата HTML директориум се вика - не можете да го видите - се вика error.php. И error.php е само датотека која не сум направил кој ви покажува дека самата страница. Можам да ви покажам што error.php е. Тоа е токму оваа страница. Таа вели, "не О, не! Canz најдете z страница!" И, ако сакате да се види - така, забележи дека htaccess вид на е чудно име.. Таа започнува со точка, што значи дека тоа е систем датотека. Тоа е скриен фајл кој не е нормално прикажана. Ако го направите ls-а, можете да ги видиш сите од скриените датотеки во одреден директориум, и навистина, ќе видите. htaccess е еден од нив. Ајде да одиме напред и да се отвори htaccess. - со gedit - Бум! Што јас имам е една линија во таму - Грешка документ за 404 грешки кои се исто така познат како датотека не-најде грешки. Ајде да ги пренасочува кон нешто што се нарекува error.php. Можете да се забавувате работи како не canz најдете z страница! И исто така има многу кул работи што можете да направите со. Htaccess датотека. Ако сакате да видите повеќе. Htaccess магија, ова е многу кул веб-сајт да одат на - се вика javascriptkit.com/howto/htaccess.shtml-- ако вие сакате да изведите повеќе сервер магија. И тоа би можело да биде многу забавно. Whew! Сите во право! Повеќе симпатична слики. Ова е еден дечко прави склекови, и неговата мачка се обидува да им помогне. Мислам дека тоа е многу симпатична. За жал, јас немам мачка како тоа. Сите во право. Значи, ние сме зборуваше. Htaccess. Ние разговаравме за справување со грешки. Ние разговаравме за хостинг, домен имиња. Ние разговаравме за крос-пребарувачот компатибилност. Сега како ние да бидете сигурни дека вашиот сајт всушност извршува? Како ние да бидете сигурни дека ако одам кон вашиот вебсајт Јас може да се види вашата страница во рок од неколку секунди? Една од работите што мислам дека луѓето само вид на заборавам е сликата оптимизација. Да речеме дека си сакал да се стави слика на вашиот сајт и тоа е 2 mg голем. Тоа може да биде во ред за нас, бидејќи ние сме на Харвард, и ние имаме многу брза интернет врска. Но, замислете некој во Кина. Замислете некој во Индија. Замислете некој можеби во руралните Канзас кои можеби не имаат ист вид на широкопојасен интернет што го имаме. Ако имате 2 MB сликата на вашиот сајт и корисникот се обидува да го достигнете, тоа се случува да ги земе навистина долго време да ја преземете. Значи, ако вие не треба тој вид на резолуција, тогаш може да се промени големината на вашиот имиџ со нешто како Adobe слика продавница. Има обично опција наречена безбедни за интернет и уреди, и она што го прави тоа е тоа отстранува сите непотребни информации и вид на compacts вашето досие во мала големината на сликата, така што ќе може да стави го на вашиот веб-сајт, и секој корисник кој се обидува да го симнете оваа страница се случува да го симнете помала верзија на сликата. Ако немате Adobe Фото Магазин webresizer.com е исто така уште еден ресурс каде што можете да внесете вашиот сликата и тоа ќе плукаат на иста слика, но тоа ќе биде нешто како 3 пати помала. Па тоа е многу корисно за вашите корисници. Друга работа е што можете да направите е да омаловажавам код. Ако ги погледнеме во Google.com, ќе видите дека тоа не е вид на иста HTML и CSS, дека ние сме навикнати. Само ќе се погледне на изворниот код овде. Ако јас само движете надолу - Леле, што изгледа прилично одвратно. Ова ќе добие нула на стил. Ако кодирани ова за вашиот Pset, ќе добиете нула на вашиот стил. Ова нема празно место. Имињата изгледа навистина криптичната. Сето тоа е навистина одвратно. И на сценариото да се затвори во телото - затворање на HTML - тие се сите заедно - сите smushed заедно. Зошто го прават тоа? Тие minified нивниот код. Забележете дека овој документ ќе биде многу помала за мене за да ја преземете од нешто со бели простор, отколку нешто со навистина долго променлива имиња. Ако омаловажавам вашите кодот отстранува сите бели простор. Се разбира, вашиот пребарувач не му е гајле ако имате било какви белиот простор во вашиот код. Ти ја отстранува, сега можам да го симнете помала датотека - сега на датотеката - документ со кој ние ќе преземете има помала големина на фајл, тоа ќе биде побрзо за мене да го симнете, и тоа е корисно. Ако си работат со веб-сајтови и сте лансирање на интернет страница, тоа е речиси секогаш е добро да омаловажавам вашиот код. Друга причина зошто тоа би можело да биде добро е можеби вие не сакате другите да го користите вашиот код. Можеби вие не сакате другите да го користите вашиот CSS код. Знаеш ако навистина сакаше да се скржавиот со тоа, тогаш исто така може да омаловажавам вашиот код, и тоа ќе биде потешко за мене да го украдат бидејќи јас немам поим што се случува. Можете исто така да одат на веб-сајтови како minify.avivo.si. Услуги како овој онлајн да ви помогне да омаловажавам вашиот код, така што ќе не мора да го направи тоа со рака. Дефинитивно не го прават тоа од рака. Во ред. Сега се зборува за скрипти. Можеби во вашиот PHP код има нешто што не треба да се направи. Можеби има дополнителни јамки во таму. Ние разговаравме за код дизајн во CS50. Дури и ако сте кодирање во C ако имате - ако правиш дополнителна работа дека не треба да се направи, добро, тоа се случува да ви го успори вашиот скрипти на вашиот сајт, и ова е особено важно за веб-сајтови, бидејќи корисниците во денешно време се многу нетрпеливи. Ако правиш непотребни работи, тоа се случува да ги земе подолг да се дојде до информации дека тие сакаат, и тие се случува да биде многу несреќни. Конечно, можеби ќе сакате да се оптимизира вашата база на податоци маси. Запомни ние разговаравме за индекси. Тие не се само добри за што си сигурен дека имаш ред тоа е уникатен. Тие се исто така добар за правење на сигурни дека вашата база на податоци работи брзо. Ако сакате да прочитате за тоа што одат на документација MySQL, или може да се погледне - и, како можам да се оптимизира мојот базата на податоци маса? Како можам да бидете сигурни дека имам индекси кои ми помогне да се дојде до информации побрзо? Исто така, постојат мали трикови кои можете да ги користите како кеширање. Ако имате PHP - ако имате блог, на пример, и имаш - а тоа е придвижуван од страна на PHP или било кој друг јазик - можете да го кешот на вашиот блог на да речеме 50-минута интервали, така што ќе може да послужи статични страници или статични HTML на посетителите на вашиот сајт. На тој начин корисниците не мора да се кандидира на вашиот PHP скрипта во секое време, и можеби тоа ќе биде побрз за нив да пристапите таа информација. И, конечно, можете да го користите нешто како CDN. Забележите дека секогаш кога ќе преземете Pset, секогаш одите во CDN.CS50.net. Зошто е тоа така? CS50 исто така го користи нешто налик на CDN - содржина дистрибутивната мрежа - што само значи дека тоа е еден куп на сервери можеби некаде околу земјината топка дека помош им служи на вашите страници за вашите посетители. Ако вашиот посетител е добивање на една страница од еден сервер кој е поблиску до нив географски, тогаш најверојатно вашиот посетител се случува да се добие таа датотека многу побрзо. Исто така, постојат извори на интернет кои ви помогне да го направите тоа. Еден од нив е CloudFlare. Тие нудат бесплатен CDN услуга. Ако имате големи датотеки, кои вашиот служат на вашите корисници, тогаш можеби е подобро да ги стави на CDN, така што тие може да се дојде до нив побрзо. Конечниот тема за тој ден е оптимизација на сајтови. Што е оптимизација на сајтови? Тоа е што си сигурен дека пребарувачи како Google или Бинг или Јаху да одат за да вашиот сајт и индексирање на вашиот сајт и индекс на вашиот сајт и кога Јас, на пример, одат за да Google.com и јас се обидувам да бараат нешто, тогаш вашиот сајт ќе pop-up. Како да бидете сигурни дека вашиот сајт е еден од топ 10? Бидејќи, како што сите знаеме, ако барате нешто на Google и тоа не е на врвот 10 сте повеќето најверојатно, нема да се погледне во текот на следните 10. Ова е вид на тема која е обвиткан во мистерија. Има многу возбуда таму на интернет. Постојат голем број на суеверија околу ако не x тогаш Google ќе се допаѓа можете подобро. Ако не y тогаш Google ќе се допаѓа можете подобро. Тоа е можеби подобро да се погледне во документите за пребарување гигант себе. Ова е еден од документите на Google дека ти кажам точно како да се оптимизира вашиот сајт така што Google може да пристапите и индекс на неа многу убаво. Вие не треба да го копирате надолу оваа адреса, бидејќи оваа презентација ќе се бидат онлајн во секој случај. Ако се погледне на ова и ќе го прочитате овој постојат некои многу корисни совети во таму. На Google ви кажува - ако навистина сакате вашиот сајт да бидат индексирани добро тогаш треба да го направите сите овие работи. Друга работа е дека пребарувачите навистина ми се допаѓа е свежа содржина. Ако имате содржина која е ажурирани многу редовно тогаш пребарувачите се каже, ooh, ми се допаѓа вашиот сајт. Одам да одат на вашиот сајт многу често. Одам да индексира многу од вашите страници. Ако имаат свежи содржини, тогаш ти си поголема веројатност да се појавиш - ти си поголема веројатност да бидат повеќе релевантни. Ти си поголема веројатност да бидат повеќе ажурирани, и пребарувачите се со поголема веројатност да се стави вашиот сајт над другите. Длабоки врски се исто така важни. Ако навистина сака вашиот сајт да изгледаат добро во очите на пребарувач имаат многу други веб-сајтови поврзани со неа и се поврзани длабоко во вашиот сајт. Немојте само да се поврзе на вашата страница. Линк до можеби yourname.com / нешто / нешто / something.php. Дека - за да пребарувач - значи, Леле, тие имаат навистина интересна содржина дека некој друг е поврзување толку длабоко во нивниот сајт дека јас треба навистина, навистина стави повеќе важност излез страници кои сајт. Ако имате точни страница наслови, ако немаат грешки, тоа е добро, бидејќи Ако пребарувач се обидува да посетат вашиот сајт, и тоа е добивање на грешка, тоа е веројатно нема да се откажат од многу, многу наскоро. И, конечно, сакате да имате брз оптоварување време, бидејќи пребарувачи - исто како и луѓето - Дон имаат многу трпение за бавно веб-сајтови. Ова е начин за да бидете сигурни дека ќе се појавиш повисоко во пребарувач пребарувања и се надевам дека на тој начин да добиете повеќе сообраќај. Бидејќи по сите, си поминал сето ова време развивање на вашиот веб-сајт. Ви помина сето ова време отворањето на оваа веб-страница на интернет. Вие сакате да бидете сигурни дека ќе имаат многу корисници, кој всушност го видите вашиот содржина. Други добри ресурси за употреба. Google Webmaster Tools е нешто да се погледне во. Ова само ви помага да се види - Google не е индексирање мојот сајт. Какви видови на грешки е тоа наидувајќи? Колку страници има тоа индексирани? Она што не го мислат е најважната содржина на мојата страница? Можеби тоа не е она што сакам да биде. Можеби и јас треба да се промени мојот вебсајт малку, така што тоа е одраз подобро она што мојот веб-сајт е навистина за. Google Analytics е уште еден навистина кул алатка. Можете да додадете малку на JavaScript на вашите страници. А потоа потоа можете да одат на Google Analytics, а тоа ќе ја следи вашиот посетител демографијата и вашиот сајт раст. Тоа ќе ти кажам точно колку посетители го посетуваат вашиот сајт во одреден ден, во одреден час, во рамките на одредени недела. Колку посетители од Кина? Колку посетители од Антарктикот - ти си добивање на вашиот веб-сајт. тоа може да биде нешто кул да се види или дури може да биде корисно затоа што сте се обидува да наведете одреден група. Можеби сте се обидува да наведете тинејџери со својата веб-страница, и ќе видите дека повеќето од посетителите на вашиот веб-сајт се можеби 30 - до 40-годишна возраст, тогаш можеби или имате проблем или пак само може да се каже, добро, тогаш можеби и јас само треба да се менува фокус мојот веб-сајт, така што Јас се фокусираат повеќе на таа возрасна група. Google Apps - ако си сакал да имаат вид на пораки со вашиот домен име - можеби нешто како yourname@yourname.com-- можете да го користите Gmail адреси - можете да го користите Gmail сервисот и Google Apps е еден начин да го направите тоа. Можете да го поставите специфични е-мејл адреси кои се специфични за вашиот домен име наместо of@gmail.com. И конечно, постојат веб-развивач екстензии и додатоци - за Хром, за Firefox, за другите прелистувачи - кои ви дозволуваат да одат во и увид CSS, врши увид JavaScript, види точно она што е во ред со вашиот JavaScript скрипта, и можеби тоа ќе бидат корисни за вашиот де-bugging цели, за вас да дознаат - добро, зошто не е мојот веб-сајт прикажување правилно во овој интернет пребарувач? И конечно, ако си сакал да дознаете повеќе за сите овие теми - ако си сакал да дознаете повеќе за HTML и CSS и JavaScript - бидејќи по сите, ние само ви предава малку - можете да се обратите веб-сајтови како W3Schools.com да се погледне за повеќе ресурси. Тие имаат многу убаво упатства за тоа како да го направам X, или она што не y значи? Ако си сакал да дознаете повеќе за овие јазици можете едноставно да одат овде. Сите во право. Мислам дека сакаше да замине од последните неколку минути на овој за прашања, па се таму било какви прашања во врска со ништо што ние разговаравме за? [Публиката член] Какви видови на работите се на W3Schools и како се покриени? [Yuechen Жао] Какви видови на нештата? Значи, една од многу најголемите работи што јас го користам многу е нивните препораки. Нивните препораки детали, на пример за CSS - што тоа значи или ако си сакал да се промени позадината на една страница - како да го направам тоа? Кои прелистувачи имаат подршка за таа команда? Работи како што. А потоа тие, исто така, само треба многу убаво вежби на HTML, на PHP, за да го вклучите Javascript, на MySQL, за сите видови на различни теми. Тие имаат убав вежби. Тие ќе учат како да се прават работите. Тоа е убаво да се биде во можност да одат и да дознаете повеќе за овие теми. [Публиката член] HTML 5 се уште не е компатибилен со сите прелистувачи таму. Дали ви препорачуваме едноставно останувајќи далеку од тоа, бидејќи на компатибилност прашања? Како ќе се справи со тоа? [Yuechen Жао] Да, па, прашањето е HTML5 е се уште бебе стандард. Тоа не е навистина поддржан од страна на многу пребарувачи, па ние треба да се избегне тоа? Мислам дека минатата година јас би бил многу голем поборник на, ајде да се избегне HTML5 затоа што уште се - тоа е сè уште многу многу нови и во Всушност, HTML5 стандард истиот не е завршен сеуште. И така, навистина не е HTML5 стандард. Но мислам дека особено ако сте дизајнирање на веб-сајт сега, тоа би можело да биде подобро, ако само оди со HTML5, бидејќи тоа е вид на ќе биде во иднина, и ако сакате вашиот сајт да биде иднина-доказ и сакате вашиот сајт да работи во иднина пребарувачи, тоа би можело да биде подобро да се започне изградба нешто за во иднина отколку за минатото, и исто така само поради фактот дека HTML5 навистина не е толку различни од HTML4 или XHTML. Ако сте со користење HTML5, тоа нормално ќе работат во повеќето пребарувачи. Вие само треба да се најде на оди во и бидете сигурни дека со овие screenshot- и што си сигурен со случува на овие веб-сајтови себе. Но најверојатно тоа ќе работи освен ако не сте користење на многу специфични карактеристики на HTML5. Забележете исто така дека за CS50 - на пример, за видео плеер кој ние ги користиме - тоа го користи HTML5 и HTML5 видео за да се прикаже предавања. Но ако имате навистина стар прелистувач, тогаш тоа ќе се врати на Флеш. Значи, тоа е, исто така, нешто друго - имаат пад-назад систем за кога ќе само знам дека на прелистувачот не ќе се справи со она што го сакате тоа да се справи. Други прашања? Нешто што ние разговаравме за. Сите во право. Тогаш мислам дека е за тоа за мене. Мислам дека тоа е тоа. (Аплауз) Кул. [CS50.TV]