1 00:00:00,000 --> 00:00:05,177 2 00:00:05,177 --> 00:00:07,010 DOUG LLOYD: Kadang-kadang apabila kita pengaturcaraan 3 00:00:07,010 --> 00:00:10,620 kami melakukan perkara yang begitu biasa, jadi kerap, dan begitu ramai orang 4 00:00:10,620 --> 00:00:14,920 melakukan idea-- yang sama atau yang sama perkara, bahawa ia mempunyai nama. 5 00:00:14,920 --> 00:00:16,780 MVC betul-betul satu perkara itu. 6 00:00:16,780 --> 00:00:19,130 Ia dipanggil paradigma pengaturcaraan. 7 00:00:19,130 --> 00:00:21,830 Ia semacam suka amalan terbaik yang telah disuling ke bawah 8 00:00:21,830 --> 00:00:24,100 oleh orang yang cuba untuk melakukan sesuatu. 9 00:00:24,100 --> 00:00:26,770 Dalam kes ini, melaksana sistem laman 10 00:00:26,770 --> 00:00:29,700 bahawa pengguna berinteraksi dengan di laman web yang lebih kompleks. 11 00:00:29,700 --> 00:00:32,430 Dan ia dilakukan supaya biasa yang ia disyorkan sebagai standard 12 00:00:32,430 --> 00:00:35,721 bahawa orang lain mungkin suka untuk diikuti, dan ada satu set yang sangat khusus cara 13 00:00:35,721 --> 00:00:37,500 salah satu yang boleh mengikuti paradigma ini. 14 00:00:37,500 --> 00:00:42,580 >> Jadi, MVC adalah paradigma, dan sebab kami menggunakannya adalah untuk butiran abstrak jauh 15 00:00:42,580 --> 00:00:43,560 daripada pengguna. 16 00:00:43,560 --> 00:00:45,700 Beberapa perkara yang pengguna tidak benar-benar perlu untuk melihat. 17 00:00:45,700 --> 00:00:47,616 Mereka hanya mahu mempunyai pengalaman pengguna yang baik, 18 00:00:47,616 --> 00:00:50,590 dan kita tidak perlu mempunyai mereka mengakses setiap fail tunggal yang 19 00:00:50,590 --> 00:00:52,750 wujud pada pelayan web kami, mungkin. 20 00:00:52,750 --> 00:00:56,160 Mungkin terdapat beberapa fail yang hanya digunakan untuk menyokong pengalaman pengguna, 21 00:00:56,160 --> 00:00:57,644 dan dengan itu kita boleh abstrak yang jauh. 22 00:00:57,644 --> 00:01:00,060 Kita boleh semacam menyembunyikan mereka supaya pengguna tidak boleh bekerjasama dengan mereka, 23 00:01:00,060 --> 00:01:02,480 tetapi kami pages-- pages-- kami tahu bagaimana untuk berurusan dengan mereka 24 00:01:02,480 --> 00:01:05,840 dan memanggil mereka atau mungkin memerlukan, mahu mereka, atau sesuatu seperti itu. 25 00:01:05,840 --> 00:01:09,130 >> Motivasi utama untuk MVC adalah keselamatan data, 26 00:01:09,130 --> 00:01:12,415 kerana MVC biasanya datang dalam konteks bekerja dengan pangkalan data. 27 00:01:12,415 --> 00:01:14,480 Dan dalam kita khususnya hendak menghalang pengguna 28 00:01:14,480 --> 00:01:17,900 dari secara langsung memberi kesan kepada pangkalan data. 29 00:01:17,900 --> 00:01:21,520 Kami hanya mahu melakukannya secara tidak langsung, melalui penapisan kami. 30 00:01:21,520 --> 00:01:24,780 Atau memastikan bahawa segala-galanya OK oleh kita melakukan sedikit semakan ralat 31 00:01:24,780 --> 00:01:27,930 atau kerja semakan keselamatan sebelum kita hantar ke pangkalan data, di mana 32 00:01:27,930 --> 00:01:32,850 perkara-perkara yang boleh berlaku, mungkin benar-benar salah, jika kita tidak berhati-hati. 33 00:01:32,850 --> 00:01:35,630 >> Jadi MVC bermaksud Model View Controller. 34 00:01:35,630 --> 00:01:36,870 Apa yang masing-masing bermakna? 35 00:01:36,870 --> 00:01:38,742 Pada asasnya, model adalah pangkalan data anda. 36 00:01:38,742 --> 00:01:40,700 Ia adalah di mana semua data penting untuk laman web anda 37 00:01:40,700 --> 00:01:42,790 nama pengguna lives--, login, kata laluan. 38 00:01:42,790 --> 00:01:46,400 Dan anda boleh mengemas kini, merujuk kepadanya, hampir semua yang seperti itu. 39 00:01:46,400 --> 00:01:49,490 Anda akan query pangkalan data, anda akan bertanya maklumat dari pangkalan data. 40 00:01:49,490 --> 00:01:54,810 Itulah model-- semua data di mana laman web anda hidup. 41 00:01:54,810 --> 00:01:57,930 >> Pandangannya adalah jenis seperti pengalaman pengguna. 42 00:01:57,930 --> 00:02:02,090 Ia adalah halaman yang mereka lihat selepas mereka telah meminta maklumat. 43 00:02:02,090 --> 00:02:04,280 Jadi mungkin mereka mengemukakan information-- log masuk mereka 44 00:02:04,280 --> 00:02:07,280 yang mereka akan lakukan dalam pengawal, yang kita akan bercakap tentang dalam satu saat. 45 00:02:07,280 --> 00:02:10,020 Mereka mungkin hantar mereka maklumat log masuk, 46 00:02:10,020 --> 00:02:12,320 dan pangkalan data disoal. 47 00:02:12,320 --> 00:02:16,489 Maklumat diminta dan ditarik dari pangkalan data. 48 00:02:16,489 --> 00:02:19,030 Dan kemudian sekali pengguna yang log dalam, mereka melihat halaman utama mereka. 49 00:02:19,030 --> 00:02:21,470 Itulah pandangan yang, OK? 50 00:02:21,470 --> 00:02:24,655 >> Dan kemudian pengawal adalah apa yang dipanggil logik perniagaan laman web anda. 51 00:02:24,655 --> 00:02:26,530 Dan logik perniagaan adalah salah satu istilah yang 52 00:02:26,530 --> 00:02:30,900 adalah jenis plin-washy-- suka, apakah logik perniagaan bermakna? 53 00:02:30,900 --> 00:02:33,650 Pada asasnya perniagaan anda logik adalah PHP anda. 54 00:02:33,650 --> 00:02:36,260 Pengguna anda tidak perlu untuk terus melihat PHP anda, 55 00:02:36,260 --> 00:02:40,600 tetapi PHP anda mungkin apa yang berlaku untuk membuat permintaan kepada pangkalan data. 56 00:02:40,600 --> 00:02:43,310 >> Oleh itu, input kehendak pengguna maklumat dalam pandangan, 57 00:02:43,310 --> 00:02:46,120 yang akan mengintegrasikan pengawal. 58 00:02:46,120 --> 00:02:48,130 Seperti, mereka akan menaip ke dalam borang. 59 00:02:48,130 --> 00:02:50,910 Bagaimana bahawa proses bentuk maklumat pengawal. 60 00:02:50,910 --> 00:02:55,159 Itulah PHP yang sebenarnya membuat permintaan itu kepada model. 61 00:02:55,159 --> 00:02:57,200 Kemudian model yang memberikan maklumat kepada pandangan, 62 00:02:57,200 --> 00:03:00,540 yang memberikan ia kepada pengguna, mungkin paling digambarkan seperti berikut. 63 00:03:00,540 --> 00:03:01,240 >> Jadi di sini kita berada. 64 00:03:01,240 --> 00:03:05,760 Berikut kami di sebelah kiri, dan Model kami Lihat Pengawal susunan paradigma. 65 00:03:05,760 --> 00:03:06,810 Bagaimanakah ia berfungsi? 66 00:03:06,810 --> 00:03:09,460 >> The us-- user-- membuat meminta kepada pengawal. 67 00:03:09,460 --> 00:03:13,700 Kami mengemukakan maklumat seperti dengan bentuk HTTP. 68 00:03:13,700 --> 00:03:16,080 Berdasarkan itu, pengawal ini tugasnya adalah untuk memastikan 69 00:03:16,080 --> 00:03:20,124 bahawa apa yang pengguna itu telah diberikan tidak sesuatu yang akan merosakkan model. 70 00:03:20,124 --> 00:03:22,790 Dan sebagainya pengawal akan memastikan bahawa segala-galanya OK. 71 00:03:22,790 --> 00:03:23,720 Ia akan kelihatan sangat berhati-hati. 72 00:03:23,720 --> 00:03:27,030 Jika ada sebarang kesilapan, ia akan menghentikan perkara sehingga pengguna tidak boleh sampai ke model. 73 00:03:27,030 --> 00:03:29,470 >> Tetapi menganggap semua ini OK dan ia pertanyaan sah, 74 00:03:29,470 --> 00:03:33,660 pengawal akan query model-- yang ia akan meminta ia untuk memberikan maklumat. 75 00:03:33,660 --> 00:03:36,490 Model ini akan memperuntukkan bahawa maklumat ke laman itulah pandangan, 76 00:03:36,490 --> 00:03:39,150 ia akan menghantarnya yang cara, dan kemudian pandangan 77 00:03:39,150 --> 00:03:42,620 akan mengisi maklumat yang diminta daripada model. 78 00:03:42,620 --> 00:03:46,110 >> Jadi, sebagai contoh, jika kita berbicara tentang log masuk ke laman Facebook anda, 79 00:03:46,110 --> 00:03:46,870 contohnya. 80 00:03:46,870 --> 00:03:49,570 Pandangan ini akan menjadi data yang keluar dari model yang 81 00:03:49,570 --> 00:03:52,070 merujuk kepada rakan-rakan anda dan berita memberi makan atau barangan seperti itu, bukan? 82 00:03:52,070 --> 00:03:53,380 Tetapi anda tidak akan melihat orang lain. 83 00:03:53,380 --> 00:03:55,088 >> Anda akan dapat getting-- supaya anda mengemukakan pertanyaan, 84 00:03:55,088 --> 00:03:59,400 anda log masuk ke alasan model-- saya, anda log masuk ke laman. 85 00:03:59,400 --> 00:04:01,240 Kegunaan pengawal maklumat log masuk anda 86 00:04:01,240 --> 00:04:04,920 untuk membuat permintaan untuk model untuk membuat memastikan bahawa anda adalah yang anda mengatakan anda berada. 87 00:04:04,920 --> 00:04:07,450 Seperti model, OK, ya, anda adalah yang anda mengatakan anda berada, 88 00:04:07,450 --> 00:04:09,030 jadi biarlah saya memberikan anda berita anda. 89 00:04:09,030 --> 00:04:11,730 Saya akan memberikan anda data mentah untuk berita anda kepada pandangan, 90 00:04:11,730 --> 00:04:14,063 dan maka pandangan menjadikannya cantik, memproses dengan cara yang 91 00:04:14,063 --> 00:04:17,560 yang kita digunakan untuk, memaparkan maklumat tersebut kepada pengguna. 92 00:04:17,560 --> 00:04:20,579 >> Perhatikan sambungan itulah tidak sedia ada pada gambar rajah ini. 93 00:04:20,579 --> 00:04:24,750 Tidak ada sambungan terus antara anda dan model. 94 00:04:24,750 --> 00:04:29,420 Selalu ada penampan ini pengawal di sebelah input, 95 00:04:29,420 --> 00:04:31,840 dan ada penampan daripada melihat di sebelah output. 96 00:04:31,840 --> 00:04:33,850 >> Mungkin anda seorang yang baik orang, dan jadi mungkin anda 97 00:04:33,850 --> 00:04:36,310 tidak akan melakukan apa-apa kerosakan kepada model, tetapi mungkin anda tidak. 98 00:04:36,310 --> 00:04:38,990 Atau mungkin ada seseorang yang yang pengguna yang berniat jahat yang akan mungkin 99 00:04:38,990 --> 00:04:42,640 mahu merosakkan pangkalan data anda, mungkin memadam segala-galanya daripada pangkalan data anda, 100 00:04:42,640 --> 00:04:45,080 yang boleh menjadi sangat mahal. 101 00:04:45,080 --> 00:04:48,300 Jelas sekali, yang mempunyai pengguna data is-- ada nilai untuk mempunyai data pengguna. 102 00:04:48,300 --> 00:04:53,290 Dan jadi jika kita tidak meletakkan penampan ini zon antara pengguna dan database-- yang 103 00:04:53,290 --> 00:04:58,070 pengguna dan perkara-perkara model-- mungkin tidak akan begitu baik untuk kita. 104 00:04:58,070 --> 00:05:00,232 >> Dan oleh itu adalah penting untuk mempunyai paradigma ini di mana 105 00:05:00,232 --> 00:05:03,440 pengguna boleh berinteraksi dengan pangkalan data, pasti, tetapi mereka perlu pergi melalui kami 106 00:05:03,440 --> 00:05:04,750 untuk melakukannya. 107 00:05:04,750 --> 00:05:06,530 Dan itu pada dasarnya idea dengan MVC. 108 00:05:06,530 --> 00:05:08,290 Ia cuba untuk melaksanakan keselamatan data. 109 00:05:08,290 --> 00:05:13,130 Ia cuba untuk melindungi model dari secara tidak sengaja atau dengan sengaja 110 00:05:13,130 --> 00:05:15,430 pengguna berniat jahat. 111 00:05:15,430 --> 00:05:17,392 >> Jadi apa yang berlaku apabila kita memohon paradigma ini? 112 00:05:17,392 --> 00:05:19,850 Nah, kita memisahkan data diperlukan dari website-- kami 113 00:05:19,850 --> 00:05:23,320 model-- dari logik yang melaksanakan laman web kami ini 114 00:05:23,320 --> 00:05:27,160 functionality-- yang controller-- dan dari estetika mudah dan halaman 115 00:05:27,160 --> 00:05:31,497 template yang terdiri daripada kami pengguna experience-- pandangan. 116 00:05:31,497 --> 00:05:32,330 Apakah ini bermakna? 117 00:05:32,330 --> 00:05:35,830 Baik, ia bermakna anda boleh membuat views boleh dilihat oleh pengguna. 118 00:05:35,830 --> 00:05:37,800 Anda boleh menyembunyikan model yang jauh. 119 00:05:37,800 --> 00:05:41,450 Dan controllers-- pengguna tidak mungkin terus memanipulasi. 120 00:05:41,450 --> 00:05:43,230 Mereka tidak perlu untuk mengakses kod PHP anda. 121 00:05:43,230 --> 00:05:45,646 Mereka hanya perlu melihat bentuk yang di mana mereka boleh menaip barangan masuk. 122 00:05:45,646 --> 00:05:47,605 Jadi mungkin borang adalah pemandangan, pengawal 123 00:05:47,605 --> 00:05:52,835 PHP adalah bahawa bentuk mengemukakan kepada, pengawal membuat pertanyaan kepada model, 124 00:05:52,835 --> 00:05:55,210 model yang memberikan maklumat lanjut pandangan yang berbeza yang 125 00:05:55,210 --> 00:05:57,400 memaparkan maklumat kepada anda. 126 00:05:57,400 --> 00:05:59,640 >> Program anda boleh mengakses semua logik perniagaan anda, 127 00:05:59,640 --> 00:06:02,940 tetapi pengguna anda tidak boleh terus mengakses logik perniagaan anda. 128 00:06:02,940 --> 00:06:07,600 Dan salah satu khususnya, mungkin, ilustrasi kelihatan ini 129 00:06:07,600 --> 00:06:11,370 adalah anda pernah menerima ralat 403 Larangan. 130 00:06:11,370 --> 00:06:14,070 Adakah anda pernah pergi ke web yang halaman dan dilihat 403 Larangan? 131 00:06:14,070 --> 00:06:16,200 Ia adalah jenis seperti 404 Not Found. 132 00:06:16,200 --> 00:06:20,590 >> 403 Forbidden bermakna anda cuba mengakses halaman yang anda tidak mempunyai akses kepada. 133 00:06:20,590 --> 00:06:23,790 Mungkin tapak yang menggunakan MVC pemisahan 134 00:06:23,790 --> 00:06:28,600 untuk menyembunyikan logik perniagaannya yang perlu wujud pada pelayan supaya 135 00:06:28,600 --> 00:06:32,220 untuk halaman untuk bekerja, tetapi tidak mahu anda untuk terus mengaksesnya. 136 00:06:32,220 --> 00:06:33,990 Jadi, anda mungkin mendapat ralat 403 Larangan. 137 00:06:33,990 --> 00:06:36,073 >> Dan ia akan tidak kira jika anda log masuk. 138 00:06:36,073 --> 00:06:38,570 Tiada pengguna boleh menyentuh fail ini PHP titik. 139 00:06:38,570 --> 00:06:41,080 Mereka hanya boleh menyentuh satu ini, dan one-- ini 140 00:06:41,080 --> 00:06:48,140 yang mereka dapat touch-- mungkin boleh berinteraksi dengan fail yang dikunci ke bawah 141 00:06:48,140 --> 00:06:52,330 lebih tidak langsung daripada pengguna. 142 00:06:52,330 --> 00:06:57,610 >> Jadi, kadang-kadang kita melihat kebenaran ini ralat, ini 403 Larangan. 143 00:06:57,610 --> 00:07:01,360 Bagaimana kita mengubah keizinan supaya barang-barang yang boleh atau tidak boleh dilihat? 144 00:07:01,360 --> 00:07:06,910 Apabila kita melakukan ini biasanya adalah dengan menggunakan Arahan Linux dipanggil chmod-- C-H-arena. 145 00:07:06,910 --> 00:07:11,080 >> Untuk melakukan ini, format yang cukup simple-- chmod, kebenaran, 146 00:07:11,080 --> 00:07:13,710 dan apa sahaja fail yang anda hendak untuk memohon bahawa perubahan kepada. 147 00:07:13,710 --> 00:07:17,380 Jadi, mungkin anda akan melihat sesuatu seperti this-- chmod 600 helpers.php. 148 00:07:17,380 --> 00:07:21,870 Atau mungkin anda lihat chmod this-- yang x campur yang termasuk direktori. 149 00:07:21,870 --> 00:07:23,112 Adalah adakah ini bermakna walaupun? 150 00:07:23,112 --> 00:07:25,570 Jadi, ada dua cara yang berbeza bahawa keizinan adalah biasanya 151 00:07:25,570 --> 00:07:26,920 digunakan dengan menggunakan chmod. 152 00:07:26,920 --> 00:07:29,350 Yang pertama dipanggil kaedah nombor perlapanan. 153 00:07:29,350 --> 00:07:32,160 Ini biasanya terpakai kebenaran kepada tiga kategori yang berbeza 154 00:07:32,160 --> 00:07:34,300 pengguna pada masa yang sama. 155 00:07:34,300 --> 00:07:40,120 Jadi chmod 711 fail akan membolehkan anda hak untuk membaca, menulis, dan melaksanakan 156 00:07:40,120 --> 00:07:43,050 fail anda, akan membolehkan others-- khusus 157 00:07:43,050 --> 00:07:46,469 kumpulan anda dan world-- yang hanya melaksanakan fail. 158 00:07:46,469 --> 00:07:47,760 Itulah yang ini diterjemahkan kepada. 159 00:07:47,760 --> 00:07:50,150 Nombor pertama yang terdapat adalah apa yang anda boleh lakukan, 160 00:07:50,150 --> 00:07:52,370 yang kedua ialah apa yang kumpulan anda boleh lakukan, 161 00:07:52,370 --> 00:07:54,470 dan yang ketiga adalah apa yang dunia boleh lakukan. 162 00:07:54,470 --> 00:07:57,930 Sesiapa sahaja yang yang melawat anda halaman, itu dunia. 163 00:07:57,930 --> 00:08:01,130 >> Apakah nombor-nombor sebenarnya diterjemahkan kepada walaupun? 164 00:08:01,130 --> 00:08:03,130 Jadi ini pada dasarnya menterjemahkan seperti ini. 165 00:08:03,130 --> 00:08:06,300 Jika kebenaran adalah sifar, tiada apa yang boleh berlaku. 166 00:08:06,300 --> 00:08:10,239 Jika ia adalah salah satu, anda boleh melaksanakan file-- jika itu kebenaran anda. 167 00:08:10,239 --> 00:08:13,030 Jika ia dua, anda boleh menulis fail tetapi anda tidak boleh berbuat apa-apa. 168 00:08:13,030 --> 00:08:14,967 Jika ia tiga, anda boleh menulis dan melaksanakan. 169 00:08:14,967 --> 00:08:16,050 Dan sebagainya, seperti yang anda lihat. 170 00:08:16,050 --> 00:08:19,320 Dan tujuh bermakna anda boleh melakukan segala-galanya. 171 00:08:19,320 --> 00:08:21,760 >> Jadi mengapa ini dipanggil nombor perlapanan? 172 00:08:21,760 --> 00:08:24,537 Nah, jika anda berfikir tentang hal itu, di sini adalah seperti noes dan yeses, 173 00:08:24,537 --> 00:08:26,620 dan jika kita berfikir tentang mereka peti merah dan hijau, 174 00:08:26,620 --> 00:08:28,161 mungkin yang menjadikan ia sedikit lebih jelas. 175 00:08:28,161 --> 00:08:31,410 Tetapi jika kita berfikir tentang mereka kotak merah sebagai sifar dan kotak hijau sebagai orang-orang, 176 00:08:31,410 --> 00:08:33,659 ini sebenarnya hanya set nombor perduaan, bukan? 177 00:08:33,659 --> 00:08:42,510 000 diterjemahkan kepada perpuluhan 0; 001, perpuluhan 1; 010 adalah perpuluhan 2, dan sebagainya. 178 00:08:42,510 --> 00:08:44,840 Dan jadi kita panggil perlapanan ini nombor kerana terdapat 179 00:08:44,840 --> 00:08:46,410 lapan kemungkinan yang berbeza. 180 00:08:46,410 --> 00:08:48,118 Terdapat lapan digit yang berbeza jika kita 181 00:08:48,118 --> 00:08:50,220 bercakap mengenai tiga cebisan information-- 182 00:08:50,220 --> 00:08:52,940 sedikit membaca, menulis bit, dan sedikit yang melaksanakan. 183 00:08:52,940 --> 00:08:56,910 Jadi sekarang anda boleh bercakap binari, perpuluhan, hex, dan perlapanan. 184 00:08:56,910 --> 00:09:00,250 Jadi, anda tahu bagaimana untuk berkomunikasi dengan komputer dalam empat nombor yang berbeza 185 00:09:00,250 --> 00:09:02,640 sistem, jadi itu agak sejuk. 186 00:09:02,640 --> 00:09:05,200 >> Jadi, selain perlapanan yang skim kebenaran, ada 187 00:09:05,200 --> 00:09:08,520 juga kebenaran simbolik skim, yang sedikit berbeza 188 00:09:08,520 --> 00:09:13,290 dan biasanya digunakan terbaik untuk memohon atau mengeluarkan kebenaran secara menyeluruh. 189 00:09:13,290 --> 00:09:17,070 Jadi chmod x fail ditambah mungkin menambah kanan 190 00:09:17,070 --> 00:09:20,270 untuk melaksanakan kepada ketiga-tiga kategori users-- 191 00:09:20,270 --> 00:09:22,890 diri sendiri, kumpulan anda, dan dunia. 192 00:09:22,890 --> 00:09:26,060 Ditambah yang merupakan bahagian yang menambah. 193 00:09:26,060 --> 00:09:28,430 Hak untuk melaksanakan, itu x. 194 00:09:28,430 --> 00:09:34,330 Dan hakikat bahawa ia terpakai kepada semua tiga kumpulan dari pengguna akan menjadi itu. 195 00:09:34,330 --> 00:09:39,330 >> Jadi this-- tambah x-- mungkin akan menjadi sama seperti chmod 711 196 00:09:39,330 --> 00:09:44,970 memfailkan, kerana jika anda kembali dan melihat skim nombor perlapanan, 197 00:09:44,970 --> 00:09:47,990 satu dan tujuh pasang memberi kita hak untuk melaksanakan fail. 198 00:09:47,990 --> 00:09:49,880 Jadi ini mungkin yang sama. 199 00:09:49,880 --> 00:09:53,280 >> Dan anda boleh menggunakan ini panduan untuk apa 200 00:09:53,280 --> 00:09:59,430 pelbagai perkara dalam simbolik struktur chmod-ing berada. 201 00:09:59,430 --> 00:10:03,522 Perkara-perkara yang hijau di sini akan menjadi di mana semua contoh berwarna hijau 202 00:10:03,522 --> 00:10:04,230 adalah kedua yang lalu. 203 00:10:04,230 --> 00:10:05,740 Biru itu akan menjadi biru. 204 00:10:05,740 --> 00:10:07,450 Oren akan menjadi oren. 205 00:10:07,450 --> 00:10:10,360 Jadi, anda boleh memohon perkara yang perlu anda kumpulan, kepada orang lain, kepada pengguna, 206 00:10:10,360 --> 00:10:11,510 atau kepada semua orang. 207 00:10:11,510 --> 00:10:13,670 Anda boleh memberi mereka membaca, menulis, dan melaksanakan akses, 208 00:10:13,670 --> 00:10:17,130 dan anda boleh menambah atau membuang atau menyerah hak tepat set 209 00:10:17,130 --> 00:10:20,310 kebenaran menggunakan model ini. 210 00:10:20,310 --> 00:10:22,530 >> Bagaimana kita menyemak apa yang skim kebenaran fail itu? 211 00:10:22,530 --> 00:10:25,770 Sebelum kita mengubahnya, ia mungkin baik untuk benar-benar tahu 212 00:10:25,770 --> 00:10:27,800 apa keizinan fail berada. 213 00:10:27,800 --> 00:10:31,370 Salah satu cara untuk melakukan ini adalah untuk menjalankan ls tetapi hanya tweak sedikit. 214 00:10:31,370 --> 00:10:35,570 Jadi, jika saya menaip ls melontarkan l-- itu adalah satu huruf kecil l-- mungkin 215 00:10:35,570 --> 00:10:36,870 Saya akan melihat sesuatu seperti ini. 216 00:10:36,870 --> 00:10:39,490 Ia kelihatan sedikit samar, tetapi bahagian yang kita benar-benar mengambil berat tentang 217 00:10:39,490 --> 00:10:41,000 adalah bahan yang di sebelah kiri di sana. 218 00:10:41,000 --> 00:10:43,380 Yang benar-benar menentukan skim kebenaran fail. 219 00:10:43,380 --> 00:10:47,470 Dan anda mungkin boleh memberitahu kerana ia adalah mendapat r ini, w, dan x berselang. 220 00:10:47,470 --> 00:10:49,750 >> Mereka three-- pertama mengabaikan yang pertama 221 00:10:49,750 --> 00:10:51,870 yang kedua, yang kami akan menggandakan kembali ke. 222 00:10:51,870 --> 00:10:54,080 Ketiga-tiga pertama selepas first-- supaya kedua, 223 00:10:54,080 --> 00:10:56,700 ketiga, dan watak-watak keempat itu rentetan 10 watak 224 00:10:56,700 --> 00:10:59,150 adalah kebenaran yang anda ada. 225 00:10:59,150 --> 00:11:02,390 Jadi nampaknya saya boleh membaca, menulis, dan melaksanakan PHP. 226 00:11:02,390 --> 00:11:04,870 Saya boleh membaca, menulis, dan melaksanakan PHP WebDev, 227 00:11:04,870 --> 00:11:07,786 dan saya boleh membaca dan menulis test.php. 228 00:11:07,786 --> 00:11:11,020 >> Kumpulan saya boleh melakukan ini. 229 00:11:11,020 --> 00:11:14,960 Jadi nampaknya dengan PHP dan direktori PHP WebDev, 230 00:11:14,960 --> 00:11:18,330 kumpulan saya boleh menulis kepada mereka, tetapi apa-apa lagi. 231 00:11:18,330 --> 00:11:20,210 Dan dunia ini tidak boleh berbuat apa-apa. 232 00:11:20,210 --> 00:11:22,115 Jadi fail-fail ini tidak diakses oleh orang awam 233 00:11:22,115 --> 00:11:23,990 dan jika saya cuba mengaksesnya dan saya tidak 234 00:11:23,990 --> 00:11:29,160 berjalan Apache membolehkan mereka dicapai, maka saya akan mendapat ralat 403. 235 00:11:29,160 --> 00:11:29,950 Ia adalah seorang yang gagal. 236 00:11:29,950 --> 00:11:32,916 Saya cuba untuk mencapai fail tetapi saya tidak mempunyai keizinan untuk melakukannya. 237 00:11:32,916 --> 00:11:34,290 Dan apa yang bahawa watak pertama? 238 00:11:34,290 --> 00:11:39,120 Nah, anda mungkin boleh membuat anggaran di sini bahawa d's merujuk kepada direktori 239 00:11:39,120 --> 00:11:42,080 dan melontarkan yang merujuk kepada apa yang dipanggil "fail biasa." 240 00:11:42,080 --> 00:11:45,430 Dan mungkin anda telah melihat ini apabila anda telah cuba untuk mengeluarkan fail menggunakan rm. 241 00:11:45,430 --> 00:11:49,310 Anda telah melihat mesej samar "mengeluarkan fail biasa" - dalam kes ini, 242 00:11:49,310 --> 00:11:51,020 ia akan menjadi test.php. 243 00:11:51,020 --> 00:11:53,900 Fail biasa sahaja sesuatu itu bukan direktori. 244 00:11:53,900 --> 00:11:56,191 Terdapat beberapa orang lain di sini, tetapi secara umumnya anda 245 00:11:56,191 --> 00:11:59,179 akan melihat d'kerana direktori dan tidak ada bagi elemen pertama. 246 00:11:59,179 --> 00:12:00,720 Tetapi itu benar-benar semua yang ada padanya. 247 00:12:00,720 --> 00:12:03,210 Anda boleh menyemak fail kebenaran menggunakan ls dash l, 248 00:12:03,210 --> 00:12:05,100 anda boleh menukar mereka menggunakan chmod. 249 00:12:05,100 --> 00:12:09,430 Dan, sudah tentu, gunakan these-- mengubah keizinan 250 00:12:09,430 --> 00:12:14,180 untuk menguatkuasakan ini paradigma MVC untuk melindungi data di laman web anda 251 00:12:14,180 --> 00:12:16,180 dan tidak membenarkan pengguna untuk mengakses segala-galanya, 252 00:12:16,180 --> 00:12:19,120 tetapi hanya barangan yang mereka perlukan untuk mengakses dalam usaha untuk laman anda 253 00:12:19,120 --> 00:12:22,110 untuk bekerja dengan cara yang anda mahu ia untuk bekerja. 254 00:12:22,110 --> 00:12:23,040 >> Saya Doug Lloyd. 255 00:12:23,040 --> 00:12:24,880 Ini adalah CS50. 256 00:12:24,880 --> 00:12:27,286