>> Ред.
Па курсеви на настава.
Се разбира каталог на Харвард има неколку илјади предмети,
има неколку стотици на факултет
и има неколку десетици полиња,
компјутерски науки само дека е една од нив,
и мислев дека би го користите ова како можност да почнам да размислувам
за тоа како да спроведува стандард web-базирана апликација
користење на PHP и Laravel и исто така, како што ние би можеле модел некои
на овие реалниот свет субјекти.
Па да го направите ова ќе се послужиме Laravel, која е само рамка
дека додава многу карактеристики на PHP,
слично како Џанго додава истата да python,
Шини, додава истиот да Руби.
Значи има неколку на различни начини
во кој можете да инсталирате Laravel.
Документацијата за Laravel, како што може да се сети
од минатата недела, е всушност прилично богата
и сигурно може да се на свој дома игра
наоколу со ова и да ги следат инструкции конкретно,
но јас ќе одам да се оди напред и само ни даде брз,
виорот турнеја на некои од нив,
слично на она што Тим направи пред некој ден,
и јас сум прв случува да го користите овој.
Па Композитор е вид на нови и подобрени функција
за светот PHP што го прави тоа полесно да се инсталира работи.
Ако сте запознаени со акт Добие во [нечујни] свет
или [нечујни] светот или Yum во [нечујни]
и Ред Хет светот, овој е уште само уште една алатка
кој ви овозможува да инсталирате нешта
за ова конкретно на животната средина.
Значи, ако го направам Композитор, Создаваат проектни и така натаму,
кој јас ќе го направите тука, ајде да одиме напред и само, јас ќе ти прошетка
преку некои од овие чекори како што направивме последен пат
без знакот за процент, Мајката, без композитор.
Така е и со Композитор-Јас сум со користење различни виртуелната машина
отколку што беше порано.
Да го направиме ова вистински пост.
Добро, така што инсталирањето Композиторот е толку едноставно како ова.
Па јас ќе се направи, јас ќе станам на мојот импровизирана трибуна за некое време премногу.
Ова е всушност многу повеќе заеднички парадигма
за инсталирање работи на луѓе компјутери, овие денови,
каде што во суштина добивање на произволен URL-то,
цевка преку преведувач а потоа само го направи она што
дека произволни парче од код која само сменет вели да се направи.
Тоа е многу лесно, колку сте за да видиме, но се реализира скептик
во вашиот треба да мислат дека овој е меѓу повеќе несигурни
работи што некогаш можеше да стори; симнување на произволна датотека
од интернет и потоа слепо се извршува по пат
на цевката, но ние ќе Веруваме дека инсталерот е
всушност легитимни денес.
Одам да се оди напред и да ја извршите оваа и тоа се случува
за да ја преземете програмата.
Тоа се случува да го спуштите фајлот наречен composer.farphparchive,
и јас ќе одам да си напред и го правам тоа,
sudo првиот всушност chmod755composer.far,
која се случува да се направи извршна од секого,
а потоа јас ќе одам да направи sudo mv композитор
на корисникот локален бин композитор, и она што е корисник на локалната бин
за оние кои се запознаени со Linux?
Да биде јасно што јас го правам ова внатре
на апаратот, иако Јас сум со користење терминал на мојот Mac.
[Ниските аудио] Точно, па во директориумот,
всушност мала појаснување.
Во директориумот обично се нарекува / bin
и / или userbin се навистина некои многу популарни програми
како CD и ЛС и така натаму.
На корисникот локален бин по договор не е ништо стандардно и ние,
на корисниците на системот, може да стави нешто што сакаме таму
И по дифолт тоа е во вашата т.н. пребарување патека, така што
кога ќе се впишат само композитор оперативниот систем, Linux,
се случува да се погледне во тоа Директориум меѓу другите
да се најде на програмата во прашање, и излегува дека тоа е во ред
да го преименуваат со наставката на датотеката
бидејќи ние сме направени тоа извршна.
Оваа работа, всушност, ќе се кандидира како ние имаме намера.
Океј, па сега јас ќе одам да се вратиме
на Line I предложивме изврши претходно, што е ова;
композитор и потоа е потребно командната линија аргументи,
што знам само од читање на документација,
наречен создаде проект.
Јас треба да го одредите името на на проектот на кој сакам
до база на рудникот и Laravel / Laravel во суштина се однесува
да А Земи центар складиштето во која што живее код.
Каталог е произволна име Одам да им даде на мојот проект,
Каталогот се разбира, но може да ја наречеме foo
или нешто друго, и претпочитаат-dist.
Тоа е малку отсечен.
Тоа само значи претпочитаат најновите дистрибуција.
Па јас ќе одам да се оди напред и да притиснете Ентер и како Тим рече
во средата дека може понекогаш да потрае некое време,
особено ако сте на бавно врска
или ако не сте го кеширани некои од овие работи,
но она што ова е прави е тоа е проверка
надвор целиот куп на кодот од интернет.
Тоа е полека да преземете го на мојот компјутер
и кога тоа е конечно направи,
Одам да имаат директориум наречен Каталог внатре
од кои е-Упс, тоа е зошто.
Каталог, ајде да го направи тоа повторно.
Океј не се кандидира тој.
Очигледно имате постоечка Каталог директориум и го забележува
дека во последен момент.
Ова се случува да имаат за мене директориумот наречен Каталог внатре
на која е за сите кодот што ми треба
да почнете да пишувате на веб-базирани апликација со Laravel.
Тоа во рок од неколку секунди ова треба да започне во
и штом ќе ја имаат оваа и повторно ако не сте на местото
каде што сте во можност да следат заедно токму сега,
тоа е сосема во ред, тоа е прилично лесен
да се рекреираат на овие чекори потоа во вашата апаратот.
Во ред. Добро во меѓувреме, како го правиме тоа,
Одам да се повлече до една друга трага.
Па можеби ќе треба види Тим споменува
или да ја уредите оваа датотека последен пат.
Што е etc / домаќин датотека и каде што живеат?
Добро, ајде да се тркалаат назад во времето.
Што е DNS, која ние дискутира не толку одамна?
Добро, па името на доменот систем.
Ова е само инфраструктура на интернет
кој што прави во една реченица?
Да. [Ниските аудио] Токму така.
Таа се конвертира имиња на домени за IP адреси и обратно,
па тоа е ефикасно голема базата на податоци маса
со овие две колони, кои имаат целосно квалификувани имиња на домени
на левата и IP адреса на десната страна, на пример,
и тоа само конвертира двете.
Сега тоа е сите фини и добри но ако навистина сакате да
да се создаде нов домаќин имиња на на интернет, нови имиња на домени
на интернет, обично мора да се даде некој пари,
што треба да го конфигурирате работите на нивниот сервер, нивното име сервери
и така натаму, што е вистинска болка, а особено
ако ние навистина не сакаат да купат име на домен, ние само сакаме
да се преправаме како имаме нашите сопствени локалниот домен,
на пример се нарекува Каталог или Catalog.com
или нешто слично.
Па etc / домаќин ви овозможува да тешко код мапирање помеѓу имињата на домаќините
и IP адреси на вашиот сопствена локална компјутер, така што
да суштина трик на компјутер во размислување
дека тоа име на домен всушност постои во тоа IP адреса.
Се проверува пред да на всушност DNS самиот систем
се проверува.
Па да ми одат во овој терминален прозорец и тоа изгледа
како во позадина таму,
сè што беше симнат успешно,
па што јас сум сега ќе да направите е следново.
Ако сте запознаени од вашиот 50 или 51 дена
со G Уреди, јас ќе одам да си напред и го правиме ова со G Уреди
во прв, но јас сум ќе одиме напред
и направи sudo g уреди / etc / Силите внатрешноста на апаратот,
и кога ќе го направите ова јас сум ќе добиете прозорец
кој изгледа како овој овде.
Малку криптичната линии само затоа што тие се долго,
но во суштина тоа е мапирање 127.0.0.1
на неколку различни име на домаќин, од кои еден е локалниот компјутер,
од кои еден е апаратот а потоа уште неколку,
localhost.localdomain, appliance.localdomain.
Овие се само конвенции за користење работи како localhost
како стандардниот името домаќин и localdomain
како стандардно врвот ниво на домен или TLD.
Па се забележи она што јас веќе направи однапред тука.
Ако сакам да трик на апаратот во размислување
дека Каталог е навистина вистинскиот веб-сајт на интернет,
Можам да кажам дека апаратот својата IP адреса е 127.0.0.1.
Сега, зошто таа адреса?
Што е тоа IP адреса?
Каде дошла?
Кои никако не можев да треба да прашам за тоа?
[Ниските аудио] Што е тоа?
[Ниските аудио] Тоа е јамка назад адреса,
кој едноставно значи ова е стандардно IP адреса дадена
за повеќето било кој компјутер во светот кој поддржува IP,
интернет протокол, и тоа е јамка назад адреса
во смисла дека тоа се рефлектира.
Таа се однесува на себе.
Така што сите од нас, ако имаме апаратот или дури и MAC
или PC имаат локална IP адреса на 127.0.0.1 и тоа е се користи само
така што ќе може да се зборува само за себе.
Можев во теорија фигура
од она што IP на уредот адреса е и тип во 192,168
или што и тој број е, но тоа не е потребно.
Оваа една ќе биде неменливи и едноставно секогаш ќе работи.
Така еднаш бев спаси што во крајна линија значи
дека во прелистувачот можам да одам на http://Catalog, како јас ќе сторам тука,
но неколку работи се избувнал на портите.
Значи она што не обично значи,
кога ќе немате дозвола, забрането, да се направи нешто,
она што е вашиот прв инстинкт за решавање на овој проблем?
Јас не преземете директориумот наречен Каталог
во мојот V Силите директориум, која од минатата недела што ќе се сетите е
каде сите наши вид на локални веб-сајтови ќе живее.
Она што може да биде скршен?
Како да се поправи?
[Ниските аудио] дозволи.
Дозволи на што?
Океј датотеки потенцијално.
Па ајде да се вратиме на нашата терминален прозорец тука.
Јас сум во мојата V домаќин директориум.
Дозволете ми да го направи ЛС и известување има неколку работи.
Локалниот компјутер, кој доаѓа со апаратот, ние го стави таму.
Catalog.original, кои Ја ставив таму порано,
тоа е вид на готовиот верзија на она што ние сме
за да се нурне во, и каталог, кои Јас само ја преземале.
Ако сакам да се погледне на дозволи
на каталогот директориум, Што можам да направам ls-l и известување
дека тие се малку различни од другите.
Што дозвола е очигледно каталогот директориум,
која ние само сменет, недостаток од стандардните?
Дури и ако немате идеја што зборот е дека Груб да заклучиме
она што е различно за секоја од овие три линии?
Океј она што недостасува помеѓу линија еден и втората линија на излез?
Да? [Ниските аудио] Да, па тоа е недостасува X, која се залага
за извршна и што значи
ако директориумот е извршна?
Тоа само значи дека можете да ја отворите.
Можете CD-то во неа.
Можете да пристапите до датотеки во него.
Па ако извршна, значи на датотеката тоа е како една програма која може да работи.
А директориум е извршна ако може да оди во неа.
За да можам да го надминете овој со неколку начини.
Можев да направам chmod А плус X, што значи дека сите плус извршна
а потоа можам да кажам Каталог.
Или се потсетиме од CS50 или други класи,
Јас може да биде малку познавач и велат 0.711 или повеќе, едноставно 711
на Каталог, притиснете Enter, ништо не чини да се случи
но ако го направам ls-l, повторно, забележите дека тоа е извршна
од мојата група, кое е средината три парчиња и од страна на сите,
кој е вистинскиот три битови, и е доволно за оние
да бидат идентични за нашите цели.
Добро се чувствувам како да сме во прилично добра форма.
Ајде да се вратиме на пребарувач и ајде да ја превчитате,
мајката, сепак забрането.
Па што друго би можеле да бидат скршени?
Каде на друго место може ние сакаме да се погледне?
Па ние фиксна Каталог, па ако одам во Каталог,
ајде да направиме уште еден ЛС, сега има повеќе нешта тука и искрено
На прв поглед тоа е големо
а јас се осмелувам велат дека ова е еден од главоболки на рамки
надвор на портата и дека вид на има многу да се справи со,
но ние ќе брус во на она што е важно денес
и најважното нешто за сега е овој директориум.
Ако сте користеле апаратот пред да може да знае
дека јавно достапни директориумот се нарекува јавност,
или во изминатите години тоа беше наречен HTML но ние сме, бидејќи тоа се промени
на повеќе заеднички јавноста.
Значи, ако го направам chmod 711 за јавна
тоа не е доволно да се поправат тоа прашање.
Па сега на јавни директориум е исто така извршна
и затоа достапни.
Ајде да видиме дали сме еден чекор поблиску.
Ајде да ја превчитате, се уште нема добро, а сега тоа се случува
да се добие малку предизвик; ова ми е малку потешко.
Ако одам во јавноста, се потсетиме дека Тим ни покажа ова.
Ако го направам LS-АЛ, која листи сите датотеки во долг формат,
има точка на датотеката така да се каже
каде точка на датотеката е само датотека чие име започнува датотека
со точка.
Што значи htaccess направам?
Добро, ајде да погледнеме во тоа.
Наместо користат Г Уреди, Одам да се користи VIM,
можете да го користите Emax или nano или било која од вашите склопот уредници,
но ако гледам тука на овој има еден куп на ниско ниво нешта
кои дојдоа со Laravel е дистрибуција.
Ова е податотека дека Apache веб серверот го разбира
и скратам приказната, овие неколку линии
на конфигурацијата трик целата јавна директориум
во рутирање речиси сите HTTP барања да се погоди.
Која датотека?
Сите дојдовни HTTP барања со неколку исклучоци ќе биде изнесе
на она датотека, инаку познат како пред контролер?
>> Индекс.
>> Index.php.
Па дури и ако има foo.php датотека или bar.php датотека
во мојот јавниот именик, значењето на овие линии
во целина е да пат сите барања
да index.php освен оние датотеки навистина постои, бидејќи работите
како пата-ѓ значи дека ако името на датотеката не постои,
и ако директно не постои,
пат сите барања на index.php.
Па во малку ова ќе да ни овозможи да имаат URL-то
како http://Catalog/courses/123
каде 123 е уникатен идентификатор за курс
но тоа е јасно не името на датотека, така што барањето ќе
да се изнесе на index.php кои се случува да дознаам,
благодарение на Laravel и вас, каде да рута
дека дојдовни HTTP барање.
Но има еден проблем.
Забележите стандардно дека Htaccess датотека не е читлива
или извршна.
Executability не е важно но јас не сакате да го направите chmod644
на точка htaccess или А плус Р Сега известување
дека ако го направам сите листата, сега тоа е читлив.
Сега, ако јас ја премине моите прсти тука и повторно, Whew,
ние го имаме и трчање.
Толку глупав чекори што дека треба да поминат низ во прво време,
но фактот дека јас вид на поминав тоа
па pedantically е токму видови
на дијагностички чекори треба да се размислува
за кога нешто не е во во ред,
па дури и кога директориумот може да биде криво,
сфатат дека би можеле да исто така се точка датотеки,
особено точка htaccess кои се доста честа појава
во било која дистрибуција Apache-то,
која може да се создаде главоболки како оној.
Па јас сум добивање малку уморни од одење назад
и назад до апаратот.
Јас многу повеќе би сакал да работи на мојот Mac или дури и на мојот компјутер.
Па како можам да го направите ова исто etc / домаќин трик?
Добро да се забележи дека прво нека ми фигура
од она што на уредот IP адресата е.
Што можам да направам ifcongig, што покажува мене некои прилично криптичната излез
но известување до eth0 или поточно до eth1,
има оваа IP адреса тука.
Одам да се оди напред копија од тоа и во внатрешноста
на прозорецот на терминалот мојата MAC е Одам да ги уредувате sudo etc / Силите
на моето Mac, која дава мене слична потрага датотека.
Сите јас ќе одам да направите е ова.
Па ќе одам да трик мојот Mac
во размислување http://Catalog всушност мапи
за таа одредена IP адреса.
Добро, па ајде да одиме напред и да спаси ова, сега дозволете ми да се затвори
дека терминален прозорец и сега мојот Mac користење на било кој прелистувач сакам,
http://Catalog и јас види истото.
Сега јас дури и не мора да се мачи ќе се вратам во [нечујни]
кои вие не би сакале да направи онака, па сега сум назад
на мојот компјутер користење навистина апаратот
како само еден веб сервер.
Добро, па тука е само брзо повториме на некои
на дозволите за датотеката ние можеби ќе сакате да го смените
и јас намалување на некои делови во работи како favicon или сите
интересно за сега.
Добро, па сега да почнеме
за да го конфигурирате овој стандардно Laravel инсталација
за базата на податоци.
Па Тим направив ова накратко Последен пат премногу и датотеката
во прашање е овој овде.
Па внатрешноста на, дозволете ми промена тоа да биде конзистентна,
Каталог стан конфигурација database.php.
Па ајде да одиме во стан, ајде да одиме во конфигурација
и ајде да одиме во database.php.
Значи ова е прилично долго датотека, од кои повеќето се коментари,
но ќе види дали ќе читаат преку овој тесно
дека можете да ја конфигурирате Laravel и многу на рамки
за поддршка на различни типови на бази на податоци.
Можеби сте со користење на MySQL, можеби сте со користење пост [нечујни],
Можеби сте со користење на SQL Лајт, има и други работи
но ако ние сме користење на MySQL