1 00:00:00,000 --> 00:00:05,177 2 00:00:05,177 --> 00:00:07,010 DOUG LLOYD: Noen ganger når vi programmerer 3 00:00:07,010 --> 00:00:10,620 vi gjør ting så ofte, så ofte, og så mange mennesker 4 00:00:10,620 --> 00:00:14,920 gjøre det samme eller de samme idea-- ting, at den har et navn. 5 00:00:14,920 --> 00:00:16,780 MVC er akkurat en slik ting. 6 00:00:16,780 --> 00:00:19,130 Det kalles et programmeringsparadigme. 7 00:00:19,130 --> 00:00:21,830 Det er liksom som en beste praksis som er blitt destillert ned 8 00:00:21,830 --> 00:00:24,100 av folk prøver å gjøre noe. 9 00:00:24,100 --> 00:00:26,770 I dette tilfelle implementerer et system sider 10 00:00:26,770 --> 00:00:29,700 at en bruker samhandler med på en mer kompleks nettside. 11 00:00:29,700 --> 00:00:32,430 Og det er gjort så ofte som det er anbefalt som en standard 12 00:00:32,430 --> 00:00:35,721 at andre mennesker kanskje har lyst til å følge, og det er en veldig bestemt sett av måter 13 00:00:35,721 --> 00:00:37,500 at man kunne følge dette paradigmet. 14 00:00:37,500 --> 00:00:42,580 >> Så, er MVC et paradigme, og grunnen vi bruker det er å abstrakte bort detaljer 15 00:00:42,580 --> 00:00:43,560 fra brukeren. 16 00:00:43,560 --> 00:00:45,700 Noen ting brukerens ikke virkelig trenger å se. 17 00:00:45,700 --> 00:00:47,616 De vil bare ha en god brukeropplevelse, 18 00:00:47,616 --> 00:00:50,590 og vi trenger ikke å ha dem tilgang til hver enkelt fil som 19 00:00:50,590 --> 00:00:52,750 finnes på vår web server, kanskje. 20 00:00:52,750 --> 00:00:56,160 Det kan være noen filer som er like brukes til å styrke brukeropplevelsen, 21 00:00:56,160 --> 00:00:57,644 Og så kan vi abstrakte dem bort. 22 00:00:57,644 --> 00:01:00,060 Vi kan liksom skjule dem så brukeren kan ikke jobbe med dem, 23 00:01:00,060 --> 00:01:02,480 men vår pages-- vår pages-- vet hvordan man skal håndtere dem 24 00:01:02,480 --> 00:01:05,840 og ringe dem eller kanskje trenger, vil ha dem, eller noe sånt. 25 00:01:05,840 --> 00:01:09,130 >> Den primære motivasjonen for MVC er datasikkerhet, 26 00:01:09,130 --> 00:01:12,415 fordi MVC kommer vanligvis opp i sammenheng med å jobbe med databaser. 27 00:01:12,415 --> 00:01:14,480 Og spesielt vi ønsker å hindre brukere 28 00:01:14,480 --> 00:01:17,900 fra direkte påvirker databaser. 29 00:01:17,900 --> 00:01:21,520 Vi ønsker bare å gjøre det indirekte, gjennom vår filtrering. 30 00:01:21,520 --> 00:01:24,780 Eller å sørge for at alt er OK med oss gjøre en liten bit av feilsjekking 31 00:01:24,780 --> 00:01:27,930 eller sikkerhet korrektur før vi sende den til databasen, hvor 32 00:01:27,930 --> 00:01:32,850 ting kunne gå galt, kanskje virkelig galt, hvis vi ikke er forsiktig. 33 00:01:32,850 --> 00:01:35,630 >> Så MVC står for Model View Controller. 34 00:01:35,630 --> 00:01:36,870 Hva gjør hver av disse betyr? 35 00:01:36,870 --> 00:01:38,742 I utgangspunktet er modell databasen. 36 00:01:38,742 --> 00:01:40,700 Det er der alle viktige data for nettstedet 37 00:01:40,700 --> 00:01:42,790 lives-- brukernavn, innlogging, passord. 38 00:01:42,790 --> 00:01:46,400 Og du kan oppdatere den, se det, stort sett alt sånt. 39 00:01:46,400 --> 00:01:49,490 Du ville spørre en database, vil du spørre informasjon fra databasen. 40 00:01:49,490 --> 00:01:54,810 Det er model-- alle data hvor nettstedet ditt liv. 41 00:01:54,810 --> 00:01:57,930 >> Utsikten er typen som brukeropplevelsen. 42 00:01:57,930 --> 00:02:02,090 Det er de sidene de ser etter de har bedt om informasjon. 43 00:02:02,090 --> 00:02:04,280 Så kanskje de sender påloggings information-- 44 00:02:04,280 --> 00:02:07,280 som de ville gjøre i en kontroller, som vi skal snakke om i et sekund. 45 00:02:07,280 --> 00:02:10,020 De kanskje fremlegger påloggingsinformasjon, 46 00:02:10,020 --> 00:02:12,320 og databasen forespørres. 47 00:02:12,320 --> 00:02:16,489 Informasjon er forespurt og trekkes ut fra databasen. 48 00:02:16,489 --> 00:02:19,030 Og så når brukerens logget i, de ser deres hjemmeside. 49 00:02:19,030 --> 00:02:21,470 Det er et syn, OK? 50 00:02:21,470 --> 00:02:24,655 >> Og så kontrolleren er hva som er kalles forretningslogikk av nettstedet. 51 00:02:24,655 --> 00:02:26,530 Og forretningslogikk er en av de vilkår som 52 00:02:26,530 --> 00:02:30,900 er liksom wishy-washy-- liker, hva betyr forretningslogikk mener? 53 00:02:30,900 --> 00:02:33,650 I utgangspunktet din bedrift Logikken er din PHP. 54 00:02:33,650 --> 00:02:36,260 Din brukeren ikke trenger å direkte se din PHP, 55 00:02:36,260 --> 00:02:40,600 men PHP er trolig hva som skjer å være å gjøre forespørsler til databasen. 56 00:02:40,600 --> 00:02:43,310 >> Slik at brukeren vilje innspill informasjon i en visning, 57 00:02:43,310 --> 00:02:46,120 som vil integrere en kontroller. 58 00:02:46,120 --> 00:02:48,130 Liker, vil de skriver inn i en form. 59 00:02:48,130 --> 00:02:50,910 Slik som danner prosesser informasjon er kontrolleren. 60 00:02:50,910 --> 00:02:55,159 Det er PHP som faktisk er som reiser saken til den modellen. 61 00:02:55,159 --> 00:02:57,200 Og så den modellen gir informasjon til visningen, 62 00:02:57,200 --> 00:03:00,540 som gir den til brukeren, kanskje best visualisert som følger. 63 00:03:00,540 --> 00:03:01,240 >> Så her er vi. 64 00:03:01,240 --> 00:03:05,760 Her er oss på venstre side, og vår modell View Controller paradigme arrangement. 65 00:03:05,760 --> 00:03:06,810 Hvordan fungerer det? 66 00:03:06,810 --> 00:03:09,460 >> Den user-- us-- gjør en be til kontrolleren. 67 00:03:09,460 --> 00:03:13,700 Vi sender informasjon slik som ved en HTTP-form. 68 00:03:13,700 --> 00:03:16,080 Basert på det, er kontrolleren jobb er å sørge for 69 00:03:16,080 --> 00:03:20,124 at hva brukeren har gitt er ikke noe som ville skade modell. 70 00:03:20,124 --> 00:03:22,790 Og så kontrolleren kommer til å sørge for at alt er OK. 71 00:03:22,790 --> 00:03:23,720 Det kommer til å se veldig nøye. 72 00:03:23,720 --> 00:03:27,030 Hvis det er noen feil, vil det stoppe ting slik at brukeren ikke kan komme til modell. 73 00:03:27,030 --> 00:03:29,470 >> Men forutsatt at alt er OK, og det er en gyldig spørring, 74 00:03:29,470 --> 00:03:33,660 kontrolleren vil spørre model-- det vil be det å gi informasjon. 75 00:03:33,660 --> 00:03:36,490 Modellen vil gi det informasjon til en side som er en visning, 76 00:03:36,490 --> 00:03:39,150 det vil sende det som måte, og deretter visningen 77 00:03:39,150 --> 00:03:42,620 vil fylle ut informasjon spurt fra modellen. 78 00:03:42,620 --> 00:03:46,110 >> Så, for eksempel, hvis vi snakker om å logge inn på din Facebook-side, 79 00:03:46,110 --> 00:03:46,870 for eksempel. 80 00:03:46,870 --> 00:03:49,570 Utsikten ville være data som kom ut av den modellen som 81 00:03:49,570 --> 00:03:52,070 refererer til dine venner og nyheter mate eller sånne ting, ikke sant? 82 00:03:52,070 --> 00:03:53,380 Men du vil ikke se noen andres. 83 00:03:53,380 --> 00:03:55,088 >> Du vil bli getting-- så du sender en spørring, 84 00:03:55,088 --> 00:03:59,400 du logge inn på model-- unnskyldning meg, logg deg til siden. 85 00:03:59,400 --> 00:04:01,240 Kontrolleren bruker påloggingsinformasjonen 86 00:04:01,240 --> 00:04:04,920 for å gjøre en forespørsel til modellen for å gjøre sikker på at du er den du sier du er. 87 00:04:04,920 --> 00:04:07,450 Modellen er som, OK, ja, du er den du sier du er, 88 00:04:07,450 --> 00:04:09,030 så la meg gi deg din nyhetsstrøm. 89 00:04:09,030 --> 00:04:11,730 Jeg skal gi deg rådata for din nyhetsfeed til visningen, 90 00:04:11,730 --> 00:04:14,063 og deretter visningen gjør det pen, behandler det på en måte 91 00:04:14,063 --> 00:04:17,560 som vi er vant til, viser som informasjon til brukeren. 92 00:04:17,560 --> 00:04:20,579 >> Legg merke til den tilkoblingen som er ikke eksisterende på dette diagrammet. 93 00:04:20,579 --> 00:04:24,750 Det er ingen direkte sammenheng mellom deg og modellen. 94 00:04:24,750 --> 00:04:29,420 Det er alltid denne bufferen av kontrolleren på inngangssiden, 95 00:04:29,420 --> 00:04:31,840 og det er en buffer av se på utgangssiden. 96 00:04:31,840 --> 00:04:33,850 >> Kanskje er du en god person, og så kanskje du 97 00:04:33,850 --> 00:04:36,310 ville ikke gjøre noen skade på modellen, men kanskje du ikke. 98 00:04:36,310 --> 00:04:38,990 Eller kanskje det er noen som har en ondsinnet bruker som ville kanskje 99 00:04:38,990 --> 00:04:42,640 ønsker å skade databasen, kanskje slette alt fra databasen, 100 00:04:42,640 --> 00:04:45,080 noe som kan være svært kostbart. 101 00:04:45,080 --> 00:04:48,300 Selvfølgelig, har brukerdata er-- det er verdi å ha brukerdata. 102 00:04:48,300 --> 00:04:53,290 Og så hvis vi ikke sette denne bufferen sonen mellom brukeren og database-- 103 00:04:53,290 --> 00:04:58,070 brukeren og model-- ting kanskje ikke går så bra for oss. 104 00:04:58,070 --> 00:05:00,232 >> Og så det er viktig å har dette paradigmet hvor 105 00:05:00,232 --> 00:05:03,440 brukeren kan samhandle med databasen, sikker, men de må gå gjennom oss 106 00:05:03,440 --> 00:05:04,750 å gjøre det. 107 00:05:04,750 --> 00:05:06,530 Og det er i utgangspunktet ideen med MVC. 108 00:05:06,530 --> 00:05:08,290 Det prøver å implementere datasikkerhet. 109 00:05:08,290 --> 00:05:13,130 Den prøver å beskytte modellen utilsiktet eller med vilje 110 00:05:13,130 --> 00:05:15,430 ondsinnede brukere. 111 00:05:15,430 --> 00:05:17,392 >> Så hva skjer når vi bruke dette paradigmet? 112 00:05:17,392 --> 00:05:19,850 Vel, vi skille data kreves fra vår website-- 113 00:05:19,850 --> 00:05:23,320 den model-- fra logikken som implementerer vår nett 114 00:05:23,320 --> 00:05:27,160 functionality-- den controller-- og fra de enkle estetikk og side 115 00:05:27,160 --> 00:05:31,497 maler som utgjør vår bruker erfaring-- utsikten. 116 00:05:31,497 --> 00:05:32,330 Hva betyr dette? 117 00:05:32,330 --> 00:05:35,830 Vel, betyr det at du kan gjøre ser synlig for brukeren. 118 00:05:35,830 --> 00:05:37,800 Du kan skjule modellen unna. 119 00:05:37,800 --> 00:05:41,450 Og controllers-- brukeren kan ikke kanskje direkte manipulere. 120 00:05:41,450 --> 00:05:43,230 De trenger ikke å få tilgang til PHP-kode. 121 00:05:43,230 --> 00:05:45,646 De trenger bare å se et skjema der de kan skrive ting i. 122 00:05:45,646 --> 00:05:47,605 Så kanskje formen er en visning, kontrolleren 123 00:05:47,605 --> 00:05:52,835 er PHP at skjemaet sender til, kontrolleren gjør en forespørsel til modellen, 124 00:05:52,835 --> 00:05:55,210 modellen gir mer informasjon til et annet syn som 125 00:05:55,210 --> 00:05:57,400 viser informasjon til deg. 126 00:05:57,400 --> 00:05:59,640 >> Dine programmer kan få tilgang alle dine forretningslogikk, 127 00:05:59,640 --> 00:06:02,940 men brukerne kan ikke direkte tilgang til forretningslogikk. 128 00:06:02,940 --> 00:06:07,600 Og en særlig kanskje synlig illustrasjon av dette 129 00:06:07,600 --> 00:06:11,370 er du noen gang har mottatt en 403 Forbidden error. 130 00:06:11,370 --> 00:06:14,070 Har du noen gang gått til en web siden og sett 403 Forbidden? 131 00:06:14,070 --> 00:06:16,200 Det er liksom som 404 Not Found. 132 00:06:16,200 --> 00:06:20,590 >> 403 Forbidden betyr at du prøvde å få tilgang en side som du ikke har tilgang til. 133 00:06:20,590 --> 00:06:23,790 Kanskje dette nettstedet er bruker MVC separasjon 134 00:06:23,790 --> 00:06:28,600 å gjemme bort sin forretningslogikk som må eksistere på serveren i rekkefølge 135 00:06:28,600 --> 00:06:32,220 for siden å jobbe, men ikke Vil du direkte tilgang til den. 136 00:06:32,220 --> 00:06:33,990 Så du kan få en 403 Forbidden error. 137 00:06:33,990 --> 00:06:36,073 >> Og det ville ikke engang saken hvis du var logget inn. 138 00:06:36,073 --> 00:06:38,570 Ingen bruker kan røre denne dot PHP-filen. 139 00:06:38,570 --> 00:06:41,080 De kan bare berøre denne, og denne one-- 140 00:06:41,080 --> 00:06:48,140 den ene at de kan touch-- kanskje kan samhandle med nedlåst fil 141 00:06:48,140 --> 00:06:52,330 mer indirekte enn brukeren. 142 00:06:52,330 --> 00:06:57,610 >> Så, vi noen ganger se denne tillatelser feil, dette 403 Forbidden. 143 00:06:57,610 --> 00:07:01,360 Hvordan kan vi endre tillatelser så at ting kan eller ikke kan bli sett? 144 00:07:01,360 --> 00:07:06,910 Når vi gjør dette vanligvis er å bruke en Linux-kommando som heter chmod-- C-H-mod. 145 00:07:06,910 --> 00:07:11,080 >> For å gjøre dette, er ganske formatet simple-- chmod, tillatelser, 146 00:07:11,080 --> 00:07:13,710 og hva filen du vil til å anvende denne endringen til. 147 00:07:13,710 --> 00:07:17,380 Så, kanskje du ville se noe som dette-- chmod 600 helpers.php. 148 00:07:17,380 --> 00:07:21,870 Eller kanskje du vil se dette-- chmod et pluss x som inkluderer katalogen. 149 00:07:21,870 --> 00:07:23,112 Var betyr dette selv? 150 00:07:23,112 --> 00:07:25,570 Så, det er to forskjellige måter at tilgangen er vanligvis 151 00:07:25,570 --> 00:07:26,920 påføres med chmod. 152 00:07:26,920 --> 00:07:29,350 Den første kalles oktale tall metoden. 153 00:07:29,350 --> 00:07:32,160 Dette gjelder vanligvis tillatelser til tre forskjellige kategorier 154 00:07:32,160 --> 00:07:34,300 av brukere på samme tid. 155 00:07:34,300 --> 00:07:40,120 Ville så chmod 711 fil tillate deg rett til å lese, skrive, og utføre 156 00:07:40,120 --> 00:07:43,050 filen, ville tillate others-- spesifikt 157 00:07:43,050 --> 00:07:46,469 gruppen og world-- å bare kjøre filen. 158 00:07:46,469 --> 00:07:47,760 Det er hva dette betyr. 159 00:07:47,760 --> 00:07:50,150 Det første tallet er det er hva du kan gjøre, 160 00:07:50,150 --> 00:07:52,370 det andre tallet er hva gruppen kan gjøre, 161 00:07:52,370 --> 00:07:54,470 og den tredje er det verden kan gjøre. 162 00:07:54,470 --> 00:07:57,930 Alle som er på besøk din side, er at verden. 163 00:07:57,930 --> 00:08:01,130 >> Hva er disse tallene faktisk oversette til selv? 164 00:08:01,130 --> 00:08:03,130 Så disse i utgangspunktet sette som dette. 165 00:08:03,130 --> 00:08:06,300 Dersom tillatelsen er null, ingenting kan skje. 166 00:08:06,300 --> 00:08:10,239 Hvis det er en, kan du utføre file-- hvis det er din tillatelse. 167 00:08:10,239 --> 00:08:13,030 Hvis det er to, kan du skrive til fila men du kan ikke gjøre noe annet. 168 00:08:13,030 --> 00:08:14,967 Hvis det er tre, du kan skrive og utføre. 169 00:08:14,967 --> 00:08:16,050 Og så videre, som du kan se. 170 00:08:16,050 --> 00:08:19,320 Og sju betyr at du kan gjøre alt. 171 00:08:19,320 --> 00:08:21,760 >> Så hvorfor er disse kalles oktale tall? 172 00:08:21,760 --> 00:08:24,537 Vel, hvis du tenker på det, her er som noes og yeses, 173 00:08:24,537 --> 00:08:26,620 og hvis vi tenker på dem som røde og grønne bokser, 174 00:08:26,620 --> 00:08:28,161 kanskje det gjør det litt klarere. 175 00:08:28,161 --> 00:08:31,410 Men hvis vi tenker på de røde boksene som nuller og de grønne boksene som de, 176 00:08:31,410 --> 00:08:33,659 disse er faktisk bare sett av binære tall, ikke sant? 177 00:08:33,659 --> 00:08:42,510 000 oversettes til desimal 0; 001, desimal 1; 010 er desimal to, og så videre. 178 00:08:42,510 --> 00:08:44,840 Og så kaller vi disse oktal tall fordi det 179 00:08:44,840 --> 00:08:46,410 er åtte forskjellige muligheter. 180 00:08:46,410 --> 00:08:48,118 Det er åtte forskjellige tall hvis vi er 181 00:08:48,118 --> 00:08:50,220 snakker om tre- biter av information-- 182 00:08:50,220 --> 00:08:52,940 lese litt, skrive bit, og kjøre litt. 183 00:08:52,940 --> 00:08:56,910 Så nå kan du snakke binære, desimal, hex og oktale. 184 00:08:56,910 --> 00:09:00,250 Så du vet hvordan du skal kommunisere med datamaskiner i fire forskjellige tall 185 00:09:00,250 --> 00:09:02,640 systemer, så det er ganske kult. 186 00:09:02,640 --> 00:09:05,200 >> Derfor, i tillegg til oktal tillatelse ordningen, det er 187 00:09:05,200 --> 00:09:08,520 også den symbolske tillatelse Ordningen, som er litt annerledes 188 00:09:08,520 --> 00:09:13,290 og vanligvis brukes best å bruke eller fjerne en tillatelse over hele linja. 189 00:09:13,290 --> 00:09:17,070 Så chmod et pluss x fil kan legge til rette 190 00:09:17,070 --> 00:09:20,270 å utføre alle tre kategorier av users-- 191 00:09:20,270 --> 00:09:22,890 selv, din gruppe, og verden. 192 00:09:22,890 --> 00:09:26,060 At pluss er å legge en del. 193 00:09:26,060 --> 00:09:28,430 Retten til å kjøre, det er x. 194 00:09:28,430 --> 00:09:34,330 Og det faktum at det gjelder alle tre grupper av brukere ville være en. 195 00:09:34,330 --> 00:09:39,330 >> Så dette-- et pluss X- er trolig kommer å være nøyaktig den samme som chmod 711 196 00:09:39,330 --> 00:09:44,970 fil, fordi hvis du går tilbake og se på oktaltallet ordningen, 197 00:09:44,970 --> 00:09:47,990 enere og syvere gi oss rett til å utføre en fil. 198 00:09:47,990 --> 00:09:49,880 Så dette er trolig den samme. 199 00:09:49,880 --> 00:09:53,280 >> Og du kan bruke denne referansehåndbok for hva 200 00:09:53,280 --> 00:09:59,430 de ulike ting i symbolsk chmod-ing strukturen er. 201 00:09:59,430 --> 00:10:03,522 De grønne elementer her vil være hvor all grønn eksempel 202 00:10:03,522 --> 00:10:04,230 var en andre siden. 203 00:10:04,230 --> 00:10:05,740 Den blå ville være blå. 204 00:10:05,740 --> 00:10:07,450 Den oransje ville være oransje. 205 00:10:07,450 --> 00:10:10,360 Så du kan bruke ting til gruppe, til andre, til brukeren, 206 00:10:10,360 --> 00:10:11,510 eller til alle. 207 00:10:11,510 --> 00:10:13,670 Du kan gi dem lese, skrive, og utføre tilgang, 208 00:10:13,670 --> 00:10:17,130 og du kan legge til eller fjerne eller tildele nøyaktig et sett 209 00:10:17,130 --> 00:10:20,310 av tillatelser ved bruk av denne modellen. 210 00:10:20,310 --> 00:10:22,530 >> Hvordan sjekker vi hva en filen tillatelse ordningen er? 211 00:10:22,530 --> 00:10:25,770 Før vi endre det, er det sannsynligvis bra å faktisk vite 212 00:10:25,770 --> 00:10:27,800 hva filrettigheter er. 213 00:10:27,800 --> 00:10:31,370 En måte å gjøre dette på er å kjøre ls men bare finpusse det litt. 214 00:10:31,370 --> 00:10:35,570 Så hvis jeg skriver ls dash l-- det er en liten bokstav l-- kanskje 215 00:10:35,570 --> 00:10:36,870 Jeg vil se noe sånt som dette. 216 00:10:36,870 --> 00:10:39,490 Det ser litt kryptisk, men den delen som vi virkelig bryr seg om 217 00:10:39,490 --> 00:10:41,000 er ting på venstre der borte. 218 00:10:41,000 --> 00:10:43,380 Som faktisk spesifiserer en fil tillatelse ordningen. 219 00:10:43,380 --> 00:10:47,470 Og du kan sikkert fortelle fordi det er fikk r-tallet, w-tallet, og x er ispedd. 220 00:10:47,470 --> 00:10:49,750 >> De første three-- ignorerer den første 221 00:10:49,750 --> 00:10:51,870 for en andre, noe som vi vil doble tilbake til. 222 00:10:51,870 --> 00:10:54,080 De første tre etter den first-- så den andre, 223 00:10:54,080 --> 00:10:56,700 tredje og fjerde tegn av det 10. tegnstreng 224 00:10:56,700 --> 00:10:59,150 er de tillatelser som du har. 225 00:10:59,150 --> 00:11:02,390 Så tilsynelatende jeg kan lese, skrive, og utføre PHP. 226 00:11:02,390 --> 00:11:04,870 Jeg kan lese, skrive og utføre PHP WebDev, 227 00:11:04,870 --> 00:11:07,786 og jeg kan lese og skrive test.php. 228 00:11:07,786 --> 00:11:11,020 >> Min gruppe kan gjøre dette. 229 00:11:11,020 --> 00:11:14,960 Så tilsynelatende med PHP og PHP WebDev kataloger, 230 00:11:14,960 --> 00:11:18,330 min gruppe kan skrive til dem, men ingenting annet. 231 00:11:18,330 --> 00:11:20,210 Og verden kan ikke gjøre noe. 232 00:11:20,210 --> 00:11:22,115 Så disse filene er ikke offentlig tilgjengelig 233 00:11:22,115 --> 00:11:23,990 og hvis jeg prøvde å tilgang til dem, og jeg var ikke 234 00:11:23,990 --> 00:11:29,160 kjører Apache å gjøre dem tilgjengelige, Da ville jeg få en 403-feil. 235 00:11:29,160 --> 00:11:29,950 Det er en fiasko. 236 00:11:29,950 --> 00:11:32,916 Jeg prøvde å få tilgang til en fil, men jeg har ikke tillatelse til å gjøre det. 237 00:11:32,916 --> 00:11:34,290 Og hva er det første tegnet? 238 00:11:34,290 --> 00:11:39,120 Vel, du kan sikkert ekstrapolere her at d's refererer til kataloger 239 00:11:39,120 --> 00:11:42,080 og dashbordet viser til såkalte "vanlige filer." 240 00:11:42,080 --> 00:11:45,430 Og kanskje du har sett denne når du har prøvde å fjerne en fil med rm. 241 00:11:45,430 --> 00:11:49,310 Du har sett den kryptiske meldingen "fjern vanlig fil" - i dette tilfellet, 242 00:11:49,310 --> 00:11:51,020 det ville være test.php. 243 00:11:51,020 --> 00:11:53,900 Vanlig fil er bare noe det er ikke en katalog. 244 00:11:53,900 --> 00:11:56,191 Det er et par andre her, men generelt du er 245 00:11:56,191 --> 00:11:59,179 kommer til å se d's for kataloger og ingenting for det første element. 246 00:11:59,179 --> 00:12:00,720 Men det er egentlig alt som skal til. 247 00:12:00,720 --> 00:12:03,210 Du kan sjekke fil tillatelser som bruker ls dash l, 248 00:12:03,210 --> 00:12:05,100 du kan endre dem ved hjelp av chmod. 249 00:12:05,100 --> 00:12:09,430 Og, selvfølgelig, bruker these-- endre tillatelser 250 00:12:09,430 --> 00:12:14,180 å håndheve denne MVC paradigmet til beskytte dataene på nettstedet ditt 251 00:12:14,180 --> 00:12:16,180 og ikke tillate brukere for å få tilgang til alt, 252 00:12:16,180 --> 00:12:19,120 men bare ting som de trenger å få tilgang til for at siden din 253 00:12:19,120 --> 00:12:22,110 til å fungere slik du vil ha det til å fungere. 254 00:12:22,110 --> 00:12:23,040 >> Jeg er Doug Lloyd. 255 00:12:23,040 --> 00:12:24,880 Dette er CS50. 256 00:12:24,880 --> 00:12:27,286