1 00:00:00,000 --> 00:00:05,177 2 00:00:05,177 --> 00:00:07,010 DOUG LLOYD: Ibland när vi programmering 3 00:00:07,010 --> 00:00:10,620 Vi gör saker så ofta, så ofta, och så många människor 4 00:00:10,620 --> 00:00:14,920 göra samma idea-- eller samma sak, att det har ett namn. 5 00:00:14,920 --> 00:00:16,780 MVC är precis ett sådant. 6 00:00:16,780 --> 00:00:19,130 Det kallas en programmeringsparadigm. 7 00:00:19,130 --> 00:00:21,830 Det är ungefär som en bästa praxis som har destillerats ned 8 00:00:21,830 --> 00:00:24,100 av människor som försöker göra något. 9 00:00:24,100 --> 00:00:26,770 I detta fall, genomföra ett system med sidor 10 00:00:26,770 --> 00:00:29,700 att en användare interagerar med på en mer komplex webbplats. 11 00:00:29,700 --> 00:00:32,430 Och det görs så ofta att det rekommenderas som en standard 12 00:00:32,430 --> 00:00:35,721 att andra människor kanske gillar att följa, och det finns en mycket specifik uppsättning sätt 13 00:00:35,721 --> 00:00:37,500 att man kunde följa detta paradigm. 14 00:00:37,500 --> 00:00:42,580 >> Så, är MVC ett paradigm, och anledningen Vi använder det är att abstrakta bort detaljer 15 00:00:42,580 --> 00:00:43,560 från användaren. 16 00:00:43,560 --> 00:00:45,700 Vissa saker användaren egentligen inte behöver se. 17 00:00:45,700 --> 00:00:47,616 De vill bara ha en bra användarupplevelse, 18 00:00:47,616 --> 00:00:50,590 och vi behöver inte ha dem tillgång varje enskild fil som 19 00:00:50,590 --> 00:00:52,750 finns på vår webbserver, kanske. 20 00:00:52,750 --> 00:00:56,160 Det kan finnas vissa filer som bara användas för att stärka användarupplevelsen, 21 00:00:56,160 --> 00:00:57,644 och så att vi kan abstrakt dem bort. 22 00:00:57,644 --> 00:01:00,060 Vi kan sorts dölja dem så användaren kan inte arbeta med dem, 23 00:01:00,060 --> 00:01:02,480 men vår pages-- vår pages-- vet hur man handskas med dem 24 00:01:02,480 --> 00:01:05,840 och kalla dem eller kanske kräver, vill ha dem, eller nåt sånt. 25 00:01:05,840 --> 00:01:09,130 >> Den primära motivationen för MVC är datasäkerhet, 26 00:01:09,130 --> 00:01:12,415 eftersom MVC kommer oftast upp i inom ramen för arbetet med databaser. 27 00:01:12,415 --> 00:01:14,480 Och framför allt att vi vill hindra användare 28 00:01:14,480 --> 00:01:17,900 från direkt påverkar databaser. 29 00:01:17,900 --> 00:01:21,520 Vi vill bara göra det indirekt, genom vår filtrering. 30 00:01:21,520 --> 00:01:24,780 Eller att se till att allt är OK med att vi gör lite felkontroll 31 00:01:24,780 --> 00:01:27,930 eller säkerhet korrektur innan vi skicka den till databasen, där 32 00:01:27,930 --> 00:01:32,850 saker kan gå fel, kanske verkligen fel, om vi inte är försiktiga. 33 00:01:32,850 --> 00:01:35,630 >> Så MVC står för Model View Controller. 34 00:01:35,630 --> 00:01:36,870 Vad gör alla dessa innebära? 35 00:01:36,870 --> 00:01:38,742 I grund och botten är modell din databas. 36 00:01:38,742 --> 00:01:40,700 Det är där alla viktiga data till din webbplats 37 00:01:40,700 --> 00:01:42,790 lives-- användarnamn, inloggningar, lösenord. 38 00:01:42,790 --> 00:01:46,400 Och du kan uppdatera den, se den, ganska mycket allt sånt. 39 00:01:46,400 --> 00:01:49,490 Du skulle fråga en databas, skulle du frågar information från databasen. 40 00:01:49,490 --> 00:01:54,810 Det är model-- alla uppgifter där din webbplats bor. 41 00:01:54,810 --> 00:01:57,930 >> Vyn är ungefär som användarupplevelsen. 42 00:01:57,930 --> 00:02:02,090 Det är de sidor de ser efter De har begärt information. 43 00:02:02,090 --> 00:02:04,280 Så kanske de lämnar in deras inloggnings information-- 44 00:02:04,280 --> 00:02:07,280 som de skulle göra i en styrenhet, som vi kommer att prata om i en sekund. 45 00:02:07,280 --> 00:02:10,020 De anser kanske deras inloggningsuppgifter, 46 00:02:10,020 --> 00:02:12,320 och databasen efterfrågas. 47 00:02:12,320 --> 00:02:16,489 Information begärs och dras från databasen. 48 00:02:16,489 --> 00:02:19,030 Och sedan en gång användarens inloggad i, de ser deras hemsida. 49 00:02:19,030 --> 00:02:21,470 Det är en vy, OK? 50 00:02:21,470 --> 00:02:24,655 >> Och regulatorn är vad kallas affärslogik på din webbplats. 51 00:02:24,655 --> 00:02:26,530 Och affärslogik är en av de termer som 52 00:02:26,530 --> 00:02:30,900 är en slags wishy-washy-- vilja, vad betyder affärslogik detta? 53 00:02:30,900 --> 00:02:33,650 I grund och botten ditt företag logik är din PHP. 54 00:02:33,650 --> 00:02:36,260 Ditt användarnamn behöver inte att direkt se din PHP, 55 00:02:36,260 --> 00:02:40,600 men din PHP är antagligen vad som händer vara att göra förfrågningar till databasen. 56 00:02:40,600 --> 00:02:43,310 >> Så att användaren kommer input information i en vy, 57 00:02:43,310 --> 00:02:46,120 som kommer att integrera en styrenhet. 58 00:02:46,120 --> 00:02:48,130 Liksom, kommer de att skriva i ett formulär. 59 00:02:48,130 --> 00:02:50,910 Hur som bildar processer informationen är styrenheten. 60 00:02:50,910 --> 00:02:55,159 Det är PHP som faktiskt gör framställningen till modellen. 61 00:02:55,159 --> 00:02:57,200 Och sedan modellen ger information till vyn, 62 00:02:57,200 --> 00:03:00,540 vilket ger den till användaren, kanske bäst visualiseras som följer. 63 00:03:00,540 --> 00:03:01,240 >> Så här är vi. 64 00:03:01,240 --> 00:03:05,760 Här är vi på vänster, och vår modell View Controller paradigm arrangemang. 65 00:03:05,760 --> 00:03:06,810 Hur fungerar det? 66 00:03:06,810 --> 00:03:09,460 >> Den user-- oss-- gör en begära till styrenheten. 67 00:03:09,460 --> 00:03:13,700 Vi skickar information såsom genom en HTTP-form. 68 00:03:13,700 --> 00:03:16,080 Baserat på att kontrollenhetens jobb är att se till att 69 00:03:16,080 --> 00:03:20,124 att vad användaren har gett är inte något som skulle skada modellen. 70 00:03:20,124 --> 00:03:22,790 Och så regulatorn kommer att se till att allt är OK. 71 00:03:22,790 --> 00:03:23,720 Det kommer att titta mycket noga. 72 00:03:23,720 --> 00:03:27,030 Om det finns några fel, kommer det att sluta saker så att användaren inte kan komma till modellen. 73 00:03:27,030 --> 00:03:29,470 >> Men förutsatt att allt är OK och det är en giltig fråga, 74 00:03:29,470 --> 00:03:33,660 regulatorn kommer att fråga den model-- det ska begära att lämna information. 75 00:03:33,660 --> 00:03:36,490 Modellen kommer att ge det information till en sida som är en vy, 76 00:03:36,490 --> 00:03:39,150 det ska överlämna det att sätt, och sedan vyn 77 00:03:39,150 --> 00:03:42,620 befolkar informationen begärts från modellen. 78 00:03:42,620 --> 00:03:46,110 >> Så, till exempel om vi pratar om hur du loggar in på ditt Facebook-sida, 79 00:03:46,110 --> 00:03:46,870 till exempel. 80 00:03:46,870 --> 00:03:49,570 Vyn skulle vara uppgifter som kom ut från den modell som 81 00:03:49,570 --> 00:03:52,070 hänvisar till dina vänner och nyheter foder eller sånt, eller hur? 82 00:03:52,070 --> 00:03:53,380 Men du skulle inte ser någon annans. 83 00:03:53,380 --> 00:03:55,088 >> Du skulle bli getting-- så du skickar en fråga, 84 00:03:55,088 --> 00:03:59,400 du loggar in på model-- ursäkt mig, logga in här på sidan. 85 00:03:59,400 --> 00:04:01,240 Regulatorn använder dina inloggningsuppgifter 86 00:04:01,240 --> 00:04:04,920 att göra en begäran om att modellen för att göra Se till att du är den du säger att du är. 87 00:04:04,920 --> 00:04:07,450 Modellen är som, OK, ja, du är den du säger att du är, 88 00:04:07,450 --> 00:04:09,030 så låt mig ge er din nyhetsflöde. 89 00:04:09,030 --> 00:04:11,730 Jag ska ge er rådata för din nyhetsflödet till vyn, 90 00:04:11,730 --> 00:04:14,063 och sedan vyn gör det söt, bearbetar den på ett sätt 91 00:04:14,063 --> 00:04:17,560 att vi är vana vid, visa denna information till användaren. 92 00:04:17,560 --> 00:04:20,579 >> Lägg märke till den anslutning som är inte existerar på detta diagram. 93 00:04:20,579 --> 00:04:24,750 Det finns ingen direkt koppling mellan dig och modellen. 94 00:04:24,750 --> 00:04:29,420 Det finns alltid denna buffert av styrenheten på ingångssidan, 95 00:04:29,420 --> 00:04:31,840 och det finns en buffert av visa på utgångssidan. 96 00:04:31,840 --> 00:04:33,850 >> Kanske du är en bra person, och så kanske du 97 00:04:33,850 --> 00:04:36,310 skulle inte göra någon skada på modell, men kanske du inte. 98 00:04:36,310 --> 00:04:38,990 Eller kanske det finns någon som är en angripare som skulle kanske 99 00:04:38,990 --> 00:04:42,640 vill skada din databas, kanske bort allt från din databas, 100 00:04:42,640 --> 00:04:45,080 vilket kan vara mycket dyrt. 101 00:04:45,080 --> 00:04:48,300 Uppenbarligen, data som har användar är-- det finns värde att ha användardata. 102 00:04:48,300 --> 00:04:53,290 Och så om vi inte sätta denna buffert zonen mellan användaren och database-- 103 00:04:53,290 --> 00:04:58,070 användaren och model-- saker kanske inte går så bra för oss. 104 00:04:58,070 --> 00:05:00,232 >> Och så är det viktigt att har detta paradigm där 105 00:05:00,232 --> 00:05:03,440 användaren kan interagera med databasen, säker, men de måste gå igenom oss 106 00:05:03,440 --> 00:05:04,750 att göra det. 107 00:05:04,750 --> 00:05:06,530 Och det är i princip idén med MVC. 108 00:05:06,530 --> 00:05:08,290 Det försöker genomföra datasäkerhet. 109 00:05:08,290 --> 00:05:13,130 Det försöker skydda modellen från att oavsiktligt eller avsiktligt 110 00:05:13,130 --> 00:05:15,430 illvilliga användare. 111 00:05:15,430 --> 00:05:17,392 >> Så vad händer när vi tillämpa detta paradigm? 112 00:05:17,392 --> 00:05:19,850 Tja, vi separera data krävs från vår website-- 113 00:05:19,850 --> 00:05:23,320 den model-- från logik som implementerar vår webbplats 114 00:05:23,320 --> 00:05:27,160 functionality-- den controller-- och från enkla estetik och sida 115 00:05:27,160 --> 00:05:31,497 mallar som utgör vår användaren experience-- vyn. 116 00:05:31,497 --> 00:05:32,330 Vad betyder det här? 117 00:05:32,330 --> 00:05:35,830 Tja, betyder det att du kan göra visningar synlig för användaren. 118 00:05:35,830 --> 00:05:37,800 Du kan dölja modellen bort. 119 00:05:37,800 --> 00:05:41,450 Och controllers-- användaren kan inte kanske direkt manipulera. 120 00:05:41,450 --> 00:05:43,230 De behöver inte få tillgång till ett PHP-kod. 121 00:05:43,230 --> 00:05:45,646 De behöver bara se ett formulär där de kan skriva saker i. 122 00:05:45,646 --> 00:05:47,605 Så kanske formuläret en vy, styrenheten 123 00:05:47,605 --> 00:05:52,835 är PHP att formen lämnar till, controller gör en förfrågan till modellen, 124 00:05:52,835 --> 00:05:55,210 modellen ger mer information till en annan vy som 125 00:05:55,210 --> 00:05:57,400 visar information för dig. 126 00:05:57,400 --> 00:05:59,640 >> Dina program kan få tillgång till alla dina affärslogik, 127 00:05:59,640 --> 00:06:02,940 men användarna kan inte direkt få tillgång till affärslogik. 128 00:06:02,940 --> 00:06:07,600 Och ett särskilt, kanske, synliga exempel på detta 129 00:06:07,600 --> 00:06:11,370 är du någonsin fått en 403 Forbidden fel. 130 00:06:11,370 --> 00:06:14,070 Har du någonsin gått till en bana sida och sett 403 Forbidden? 131 00:06:14,070 --> 00:06:16,200 Det är ungefär som 404 Not Found. 132 00:06:16,200 --> 00:06:20,590 >> 403 Forbidden innebär att du försökte komma åt en sida som du inte har tillgång till. 133 00:06:20,590 --> 00:06:23,790 Kanske den platsen är med användning av MVC separering 134 00:06:23,790 --> 00:06:28,600 att gömma undan sin affärslogik som måste finnas på servern för att 135 00:06:28,600 --> 00:06:32,220 för att sidan ska fungera, men inte vill du direkt tillgång till den. 136 00:06:32,220 --> 00:06:33,990 Så du kan få en 403 Forbidden fel. 137 00:06:33,990 --> 00:06:36,073 >> Och det skulle inte ens någon roll om du loggat in. 138 00:06:36,073 --> 00:06:38,570 Ingen användare kan röra denna punkt PHP-fil. 139 00:06:38,570 --> 00:06:41,080 De kan bara röra detta ett, och detta en-- 140 00:06:41,080 --> 00:06:48,140 det som de kan touch-- kanske kan interagera med den låsta ned filen 141 00:06:48,140 --> 00:06:52,330 mer indirekt än användaren. 142 00:06:52,330 --> 00:06:57,610 >> Så ibland ser vi detta tillstånd fel, detta 403 Förbjudna. 143 00:06:57,610 --> 00:07:01,360 Hur ska vi ändra behörigheter så att saker kan eller kan inte ses? 144 00:07:01,360 --> 00:07:06,910 När vi gör detta typiskt är att använda en Linux kommando kallas chmod-- C-H-mod. 145 00:07:06,910 --> 00:07:11,080 >> För att göra detta, är ganska formatet simple-- chmod, behörigheter, 146 00:07:11,080 --> 00:07:13,710 och vad fil du vill att tillämpa denna förändring. 147 00:07:13,710 --> 00:07:17,380 Så, kanske du skulle se något liknande this-- chmod 600 helpers.php. 148 00:07:17,380 --> 00:07:21,870 Eller kanske du skulle se this-- chmod ett plus x som innehåller katalogen. 149 00:07:21,870 --> 00:07:23,112 Var betyder det dock? 150 00:07:23,112 --> 00:07:25,570 Så det finns två olika sätt att behörigheterna är vanligtvis 151 00:07:25,570 --> 00:07:26,920 appliceras med chmod. 152 00:07:26,920 --> 00:07:29,350 Den första kallas den oktala siffror metod. 153 00:07:29,350 --> 00:07:32,160 Detta gäller vanligtvis behörigheter till tre olika kategorier 154 00:07:32,160 --> 00:07:34,300 av användare samtidigt. 155 00:07:34,300 --> 00:07:40,120 Så chmod 711 fil gör att du rätt att läsa, skriva och köra 156 00:07:40,120 --> 00:07:43,050 filen, skulle göra det möjligt others-- specifikt 157 00:07:43,050 --> 00:07:46,469 din grupp och world-- bara köra filen. 158 00:07:46,469 --> 00:07:47,760 Det är vad detta kan översättas till. 159 00:07:47,760 --> 00:07:50,150 Det första numret dit är vad du kan göra, 160 00:07:50,150 --> 00:07:52,370 det andra talet är vad din grupp kan göra, 161 00:07:52,370 --> 00:07:54,470 och den tredje är vad världen kan göra. 162 00:07:54,470 --> 00:07:57,930 Vem som helst som är besöker din sida, det är världen. 163 00:07:57,930 --> 00:08:01,130 >> Vilka är dessa siffror faktiskt översätta till om? 164 00:08:01,130 --> 00:08:03,130 Så dessa i princip översätta så här. 165 00:08:03,130 --> 00:08:06,300 Om tillstånd är noll, ingenting kan hända. 166 00:08:06,300 --> 00:08:10,239 Om det är en, kan du köra file-- om det är din tillåtelse. 167 00:08:10,239 --> 00:08:13,030 Om det är två, kan du skriva filen men du kan inte göra något annat. 168 00:08:13,030 --> 00:08:14,967 Om det är tre, du kan skriva och köra. 169 00:08:14,967 --> 00:08:16,050 Och så vidare, som ni kan se. 170 00:08:16,050 --> 00:08:19,320 Och sju innebär att du kan göra allt. 171 00:08:19,320 --> 00:08:21,760 >> Så varför är dessa kallas oktala tal? 172 00:08:21,760 --> 00:08:24,537 Tja, om du tänker på det, Här är som expertnätverken och yeses, 173 00:08:24,537 --> 00:08:26,620 och om vi tänker på dem som röda och gröna rutor, 174 00:08:26,620 --> 00:08:28,161 kanske det gör det lite tydligare. 175 00:08:28,161 --> 00:08:31,410 Men om vi tänker på de röda rutor som nollor och de gröna rutor och kära, 176 00:08:31,410 --> 00:08:33,659 dessa är faktiskt bara uppsättningar av binära tal, eller hur? 177 00:08:33,659 --> 00:08:42,510 000 översätter till decimal 0; 001, decimal 1; 010 är decimala 2, och så vidare. 178 00:08:42,510 --> 00:08:44,840 Och så vi kallar dessa oktala siffror eftersom det 179 00:08:44,840 --> 00:08:46,410 finns åtta olika möjligheter. 180 00:08:46,410 --> 00:08:48,118 Det finns åtta olika siffror om vi är 181 00:08:48,118 --> 00:08:50,220 talar om tre bitar av information-- 182 00:08:50,220 --> 00:08:52,940 läs bit, skriv biten och exekveringsbiten. 183 00:08:52,940 --> 00:08:56,910 Så nu kan du tala binär, decimal, hex, och oktala. 184 00:08:56,910 --> 00:09:00,250 Så du vet hur man kommunicerar med datorer i fyra olika antal 185 00:09:00,250 --> 00:09:02,640 system, så det är ganska coolt. 186 00:09:02,640 --> 00:09:05,200 >> Så, förutom det oktala tillstånd system, det finns 187 00:09:05,200 --> 00:09:08,520 även den symboliska tillstånd system, vilket är något annorlunda 188 00:09:08,520 --> 00:09:13,290 och vanligtvis används bäst att tillämpa eller ta bort tillstånd över hela linjen. 189 00:09:13,290 --> 00:09:17,070 Så chmod ett plus x fil kan tillägga rätten 190 00:09:17,070 --> 00:09:20,270 att utföra alla tre kategorier users-- 191 00:09:20,270 --> 00:09:22,890 själv, din grupp, och världen. 192 00:09:22,890 --> 00:09:26,060 Det plus är att lägga till en del. 193 00:09:26,060 --> 00:09:28,430 Rätten att köra, det är x. 194 00:09:28,430 --> 00:09:34,330 Och det faktum att det gäller för alla tre grupper av användare skulle vara ett. 195 00:09:34,330 --> 00:09:39,330 >> Så this-- ett plus x-- är förmodligen kommer vara exakt samma som chmod 711 196 00:09:39,330 --> 00:09:44,970 fil, eftersom om du går tillbaka och titta på det oktala talet systemet, 197 00:09:44,970 --> 00:09:47,990 ettor och sjuor ger oss rätt att köra en fil. 198 00:09:47,990 --> 00:09:49,880 Så detta är förmodligen samma. 199 00:09:49,880 --> 00:09:53,280 >> Och du kan använda den här referenshandbok för vad 200 00:09:53,280 --> 00:09:59,430 de olika saker i symboliska chmod-ing struktur är. 201 00:09:59,430 --> 00:10:03,522 De gröna föremål här skulle vara där alla grönfärgade exemplet 202 00:10:03,522 --> 00:10:04,230 var en sekund sedan. 203 00:10:04,230 --> 00:10:05,740 Den blå skulle vara blå. 204 00:10:05,740 --> 00:10:07,450 Den orange skulle vara orange. 205 00:10:07,450 --> 00:10:10,360 Så du kan använda saker till din grupp, till andra, till användaren, 206 00:10:10,360 --> 00:10:11,510 eller för alla. 207 00:10:11,510 --> 00:10:13,670 Du kan ge dem läsa, skriva och köra tillgång, 208 00:10:13,670 --> 00:10:17,130 och du kan lägga till eller ta bort eller tilldela exakt en uppsättning 209 00:10:17,130 --> 00:10:20,310 behörigheter som använder denna modell. 210 00:10:20,310 --> 00:10:22,530 >> Hur kan vi kontrollera vad en fil tillstånd systemet är? 211 00:10:22,530 --> 00:10:25,770 Innan vi ändrar det, det är förmodligen bra att faktiskt veta 212 00:10:25,770 --> 00:10:27,800 vad filrättigheter är. 213 00:10:27,800 --> 00:10:31,370 Ett sätt att göra detta är att köra ls men bara justera den lite. 214 00:10:31,370 --> 00:10:35,570 Så om jag skriver ls dash L-- det är ett gement L-- kanske 215 00:10:35,570 --> 00:10:36,870 Jag ser ut ungefär så här. 216 00:10:36,870 --> 00:10:39,490 Det ser lite kryptiskt, men den del som vi verkligen bryr sig om 217 00:10:39,490 --> 00:10:41,000 är grejer på vänster där borta. 218 00:10:41,000 --> 00:10:43,380 Som faktiskt anger en fil tillstånd system. 219 00:10:43,380 --> 00:10:47,470 Och du kan nog säga att det är fick R, W: s och x: s insprängda. 220 00:10:47,470 --> 00:10:49,750 >> De första three-- ignorera den första en 221 00:10:49,750 --> 00:10:51,870 för en sekund, vilket Vi ska fördubbla tillbaka till. 222 00:10:51,870 --> 00:10:54,080 De första tre efter den first-- så den andra, 223 00:10:54,080 --> 00:10:56,700 tredje, och fjärde tecken av att 10 teckensträng 224 00:10:56,700 --> 00:10:59,150 är de behörigheter som du har. 225 00:10:59,150 --> 00:11:02,390 Så tydligen kan jag läsa, skriva och köra PHP. 226 00:11:02,390 --> 00:11:04,870 Jag kan läsa, skriva, och exekvera PHP Webdev, 227 00:11:04,870 --> 00:11:07,786 och jag kan läsa och skriva test.php. 228 00:11:07,786 --> 00:11:11,020 >> Min grupp kan göra detta. 229 00:11:11,020 --> 00:11:14,960 Så uppenbarligen med PHP och PHP Webdev kataloger 230 00:11:14,960 --> 00:11:18,330 Min grupp kan skriva till dem men ingenting annat. 231 00:11:18,330 --> 00:11:20,210 Och världen kan inte göra någonting. 232 00:11:20,210 --> 00:11:22,115 Så dessa filer inte tillgängliga för allmänheten 233 00:11:22,115 --> 00:11:23,990 och om jag försökte åt dem och jag var inte 234 00:11:23,990 --> 00:11:29,160 kör Apache för att göra dem tillgängliga, då skulle jag få en 403 fel. 235 00:11:29,160 --> 00:11:29,950 Det är ett misslyckande. 236 00:11:29,950 --> 00:11:32,916 Jag försökte komma åt en fil, men jag har inte behörighet att göra det. 237 00:11:32,916 --> 00:11:34,290 Och vad är det första tecknet? 238 00:11:34,290 --> 00:11:39,120 Tja, kan du förmodligen extrapolera här som d's hänvisar till kataloger 239 00:11:39,120 --> 00:11:42,080 och strecket avser så kallade "vanliga filer." 240 00:11:42,080 --> 00:11:45,430 Och kanske du har sett denna när du har försökte ta bort en fil med rm. 241 00:11:45,430 --> 00:11:49,310 Du har sett det kryptiska meddelandet "ta bort vanlig fil" - i detta fall, 242 00:11:49,310 --> 00:11:51,020 det skulle vara test.php. 243 00:11:51,020 --> 00:11:53,900 Vanlig fil är bara något det är inte en katalog. 244 00:11:53,900 --> 00:11:56,191 Det finns ett par andra här, men i allmänhet är du 245 00:11:56,191 --> 00:11:59,179 kommer att se d's för kataloger och ingenting för det första elementet. 246 00:11:59,179 --> 00:12:00,720 Men det är verkligen allt som finns till den. 247 00:12:00,720 --> 00:12:03,210 Du kan kontrollera filen behörigheter som använder ls streck l, 248 00:12:03,210 --> 00:12:05,100 du kan ändra dem med chmod. 249 00:12:05,100 --> 00:12:09,430 Och, naturligtvis, använder these-- ändra behörigheterna 250 00:12:09,430 --> 00:12:14,180 att genomdriva denna MVC paradigm till skydda data på din webbplats 251 00:12:14,180 --> 00:12:16,180 och inte tillåta användare att få tillgång till allt, 252 00:12:16,180 --> 00:12:19,120 men bara de saker som de behöver att få tillgång till för att din sida 253 00:12:19,120 --> 00:12:22,110 att arbeta på det sätt du vill att det ska fungera. 254 00:12:22,110 --> 00:12:23,040 >> Jag är Doug Lloyd. 255 00:12:23,040 --> 00:12:24,880 Detta är CS50. 256 00:12:24,880 --> 00:12:27,286