1 00:00:00,000 --> 00:00:05,177 2 00:00:05,177 --> 00:00:07,010 DOUG LLOYD: Đôi khi khi chúng tôi đang lập trình 3 00:00:07,010 --> 00:00:10,620 chúng ta làm những việc như vậy thường, vì vậy thường xuyên, và rất nhiều người 4 00:00:10,620 --> 00:00:14,920 làm idea-- giống nhau hoặc tương tự điều, rằng nó có một cái tên. 5 00:00:14,920 --> 00:00:16,780 MVC là chính xác một điều như vậy. 6 00:00:16,780 --> 00:00:19,130 Nó được gọi là một mô hình lập trình. 7 00:00:19,130 --> 00:00:21,830 Nó loại như một thực hành tốt nhất đã được cất xuống 8 00:00:21,830 --> 00:00:24,100 bởi những người cố gắng để làm một cái gì đó. 9 00:00:24,100 --> 00:00:26,770 Trong trường hợp này, thực hiện một hệ thống các trang 10 00:00:26,770 --> 00:00:29,700 mà người dùng tương tác với trên một trang web phức tạp hơn. 11 00:00:29,700 --> 00:00:32,430 Và nó được thực hiện như vậy thường mà nó được đề nghị như là một tiêu chuẩn 12 00:00:32,430 --> 00:00:35,721 mà người khác có thể muốn làm theo, và có một tập hợp rất cụ thể của cách 13 00:00:35,721 --> 00:00:37,500 một mà có thể thực hiện theo mô hình này. 14 00:00:37,500 --> 00:00:42,580 >> Vì vậy, MVC là một mô hình, và lý do chúng ta sử dụng nó để tiết trừu tượng đi 15 00:00:42,580 --> 00:00:43,560 từ người sử dụng. 16 00:00:43,560 --> 00:00:45,700 Một số điều người sử dụng không thực sự cần phải xem. 17 00:00:45,700 --> 00:00:47,616 Họ chỉ muốn có một kinh nghiệm người dùng tốt, 18 00:00:47,616 --> 00:00:50,590 và chúng tôi không cần phải có họ truy cập mọi tập tin duy nhất mà 19 00:00:50,590 --> 00:00:52,750 tồn tại trên máy chủ web của chúng tôi, có lẽ. 20 00:00:52,750 --> 00:00:56,160 Có thể có một số tập tin mà chỉ là dùng để tăng cường trải nghiệm người dùng, 21 00:00:56,160 --> 00:00:57,644 và vì vậy chúng tôi có thể tóm tắt những người đi. 22 00:00:57,644 --> 00:01:00,060 Chúng tôi có thể sắp xếp chúng để che giấu người sử dụng không thể làm việc với họ, 23 00:01:00,060 --> 00:01:02,480 nhưng chúng tôi pages-- pages-- của chúng tôi biết làm thế nào để đối phó với họ 24 00:01:02,480 --> 00:01:05,840 và gọi cho họ hoặc có thể yêu cầu, muốn họ, hoặc một cái gì đó như thế. 25 00:01:05,840 --> 00:01:09,130 >> Động lực chính cho MVC là bảo mật dữ liệu, 26 00:01:09,130 --> 00:01:12,415 vì MVC thường đi kèm trong các bối cảnh làm việc với cơ sở dữ liệu. 27 00:01:12,415 --> 00:01:14,480 Và đặc biệt chúng tôi muốn ngăn chặn người dùng 28 00:01:14,480 --> 00:01:17,900 từ cơ sở dữ liệu trực tiếp ảnh hưởng. 29 00:01:17,900 --> 00:01:21,520 Chúng tôi chỉ muốn làm điều đó một cách gián tiếp, qua lọc của chúng tôi. 30 00:01:21,520 --> 00:01:24,780 Hoặc đảm bảo rằng tất cả mọi thứ của OK bởi chúng tôi làm một chút kiểm tra lỗi 31 00:01:24,780 --> 00:01:27,930 hoặc chống an toàn trước khi chúng tôi gửi nó vào cơ sở dữ liệu, nơi 32 00:01:27,930 --> 00:01:32,850 mọi thứ có thể đi sai, có lẽ thực sự sai, nếu chúng ta không cẩn thận. 33 00:01:32,850 --> 00:01:35,630 >> Vì vậy, MVC là viết tắt của Model View Controller. 34 00:01:35,630 --> 00:01:36,870 Làm từng có ý nghĩa gì? 35 00:01:36,870 --> 00:01:38,742 Về cơ bản, mô hình là cơ sở dữ liệu của bạn. 36 00:01:38,742 --> 00:01:40,700 Đó là nơi mà tất cả các dữ liệu quan trọng cho trang web của bạn 37 00:01:40,700 --> 00:01:42,790 tên người dùng lives--, thông tin đăng nhập, mật khẩu. 38 00:01:42,790 --> 00:01:46,400 Và bạn có thể cập nhật nó, đề cập đến nó, khá nhiều tất cả mọi thứ như thế. 39 00:01:46,400 --> 00:01:49,490 Bạn muốn truy vấn một cơ sở dữ liệu, bạn muốn hỏi thông tin từ các cơ sở dữ liệu. 40 00:01:49,490 --> 00:01:54,810 Đó là model-- tất cả các dữ liệu mà trang web của bạn sống. 41 00:01:54,810 --> 00:01:57,930 >> Xem là loại giống như kinh nghiệm người dùng. 42 00:01:57,930 --> 00:02:02,090 Đó là những trang họ thấy sau khi họ đã yêu cầu thông tin. 43 00:02:02,090 --> 00:02:04,280 Vì vậy, có lẽ họ gửi information-- đăng nhập của họ 44 00:02:04,280 --> 00:02:07,280 mà họ sẽ làm gì trong một bộ điều khiển, mà chúng tôi sẽ nói về trong một giây. 45 00:02:07,280 --> 00:02:10,020 Họ có lẽ trình của họ thông tin đăng nhập, 46 00:02:10,020 --> 00:02:12,320 và cơ sở dữ liệu được truy vấn. 47 00:02:12,320 --> 00:02:16,489 Thông tin được yêu cầu và kéo từ các cơ sở dữ liệu. 48 00:02:16,489 --> 00:02:19,030 Và sau đó khi người dùng đăng nhập của trong, họ nhìn thấy trang chủ của họ. 49 00:02:19,030 --> 00:02:21,470 Đó là một cái nhìn, OK? 50 00:02:21,470 --> 00:02:24,655 >> Và sau đó các điều khiển là gì gọi là logic kinh doanh của trang web của bạn. 51 00:02:24,655 --> 00:02:26,530 Và logic kinh doanh là một trong những điều kiện mà 52 00:02:26,530 --> 00:02:30,900 là loại nhạt washy-- thích, những gì không logic kinh doanh nghĩa là gì? 53 00:02:30,900 --> 00:02:33,650 Về cơ bản doanh nghiệp của bạn logic là PHP của bạn. 54 00:02:33,650 --> 00:02:36,260 Sử dụng của bạn không cần để trực tiếp nhìn thấy PHP của bạn, 55 00:02:36,260 --> 00:02:40,600 nhưng PHP của bạn có lẽ là những gì đang xảy ra được làm cho các yêu cầu tới cơ sở dữ liệu. 56 00:02:40,600 --> 00:02:43,310 >> Vì vậy, người sử dụng sẽ đầu vào thông tin trong một cái nhìn, 57 00:02:43,310 --> 00:02:46,120 mà sẽ tích hợp một bộ điều khiển. 58 00:02:46,120 --> 00:02:48,130 Giống như, họ sẽ nhập vào biểu mẫu. 59 00:02:48,130 --> 00:02:50,910 Làm thế nào mà quá trình hình thức thông tin là bộ điều khiển. 60 00:02:50,910 --> 00:02:55,159 Đó là PHP đó là thực sự làm theo yêu cầu cho mô hình. 61 00:02:55,159 --> 00:02:57,200 Và sau đó các mô hình cung cấp thông tin để xem, 62 00:02:57,200 --> 00:03:00,540 đó cung cấp cho nó cho người dùng, có lẽ hình dung tốt nhất như sau. 63 00:03:00,540 --> 00:03:01,240 >> Vì vậy, ở đây chúng tôi đang có. 64 00:03:01,240 --> 00:03:05,760 Dưới đây chúng tôi trên bên trái, và mô hình của chúng tôi View Controller sắp xếp mô hình. 65 00:03:05,760 --> 00:03:06,810 Làm thế nào nó hoạt động? 66 00:03:06,810 --> 00:03:09,460 >> Các us-- user-- làm một yêu cầu để điều khiển. 67 00:03:09,460 --> 00:03:13,700 Chúng tôi gửi thông tin chẳng hạn như bởi một hình thức HTTP. 68 00:03:13,700 --> 00:03:16,080 Trên cơ sở đó, các bộ điều khiển của công việc là để đảm bảo 69 00:03:16,080 --> 00:03:20,124 rằng những gì người dùng đã cấp không phải là cái gì đó sẽ làm hỏng các mô hình. 70 00:03:20,124 --> 00:03:22,790 Và do đó, bộ điều khiển sẽ chắc chắn rằng mọi thứ đều OK. 71 00:03:22,790 --> 00:03:23,720 Nó sẽ trông rất cẩn thận. 72 00:03:23,720 --> 00:03:27,030 Nếu có bất kỳ lỗi nào, nó sẽ dừng lại mọi thứ vì vậy người dùng không thể nhận được các mô hình. 73 00:03:27,030 --> 00:03:29,470 >> Nhưng giả sử tất cả mọi thứ của OK và nó là một truy vấn hợp lệ, 74 00:03:29,470 --> 00:03:33,660 bộ điều khiển sẽ truy vấn các model-- nó sẽ yêu cầu nó để cung cấp thông tin. 75 00:03:33,660 --> 00:03:36,490 Mô hình này sẽ cung cấp cho rằng thông tin đến một trang đó là một cái nhìn, 76 00:03:36,490 --> 00:03:39,150 nó sẽ truyền tải nó mà cách, và sau đó xem 77 00:03:39,150 --> 00:03:42,620 sẽ cư thông tin yêu cầu từ các mô hình. 78 00:03:42,620 --> 00:03:46,110 >> Vì vậy, ví dụ, nếu chúng ta đang nói về đăng nhập vào trang Facebook của bạn, 79 00:03:46,110 --> 00:03:46,870 Ví dụ như. 80 00:03:46,870 --> 00:03:49,570 Quan điểm sẽ là các dữ liệu đó ra khỏi các mô hình 81 00:03:49,570 --> 00:03:52,070 đề cập đến bạn bè của bạn và tin tức ăn hoặc những thứ như thế, phải không? 82 00:03:52,070 --> 00:03:53,380 Nhưng bạn sẽ không nhìn thấy người khác. 83 00:03:53,380 --> 00:03:55,088 >> Bạn sẽ getting-- vậy bạn gửi một truy vấn, 84 00:03:55,088 --> 00:03:59,400 bạn đăng nhập vào cái cớ model-- tôi, bạn đăng nhập vào trang. 85 00:03:59,400 --> 00:04:01,240 Việc sử dụng bộ điều khiển thông tin đăng nhập của bạn 86 00:04:01,240 --> 00:04:04,920 để thực hiện một yêu cầu đến các mô hình để tạo chắc chắn rằng bạn là người bạn nói là bạn. 87 00:04:04,920 --> 00:04:07,450 Giống như mô hình của, OK, có, bạn là người bạn nói bạn đang có, 88 00:04:07,450 --> 00:04:09,030 vì vậy hãy để tôi cung cấp cho bạn nguồn cấp dữ liệu tin tức của bạn. 89 00:04:09,030 --> 00:04:11,730 Tôi sẽ cung cấp cho bạn các dữ liệu thô cho feed tin tức của bạn để xem, 90 00:04:11,730 --> 00:04:14,063 và sau đó xem làm cho nó khá, xử lý nó một cách 91 00:04:14,063 --> 00:04:17,560 mà chúng ta đang sử dụng để, hiển thị mà thông tin cho người dùng. 92 00:04:17,560 --> 00:04:20,579 >> Chú ý sự kết nối đó là không hiện trên sơ đồ này. 93 00:04:20,579 --> 00:04:24,750 Không có kết nối trực tiếp giữa bạn và các mô hình. 94 00:04:24,750 --> 00:04:29,420 Luôn luôn có bộ đệm này bộ điều khiển trên phía đầu vào, 95 00:04:29,420 --> 00:04:31,840 và có một bộ đệm của xem ở phía đầu ra. 96 00:04:31,840 --> 00:04:33,850 >> Có lẽ bạn là một người tốt người, và như vậy có lẽ bạn 97 00:04:33,850 --> 00:04:36,310 sẽ không làm bất cứ thiệt hại cho mô hình, nhưng có lẽ bạn không. 98 00:04:36,310 --> 00:04:38,990 Hoặc có thể có ai đó ai một người dùng ở những người sẽ có thể 99 00:04:38,990 --> 00:04:42,640 muốn làm hỏng cơ sở dữ liệu của bạn, có thể xóa tất cả mọi thứ từ cơ sở dữ liệu của bạn, 100 00:04:42,640 --> 00:04:45,080 mà có thể là rất tốn kém. 101 00:04:45,080 --> 00:04:48,300 Rõ ràng, có sử dụng dữ liệu is-- có giá trị để có dữ liệu người dùng. 102 00:04:48,300 --> 00:04:53,290 Và như vậy, nếu chúng ta không đặt bộ đệm này Khu giữa người sử dụng và các database-- 103 00:04:53,290 --> 00:04:58,070 người sử dụng và những điều model-- có thể không được tốt đẹp như trước cho chúng tôi. 104 00:04:58,070 --> 00:05:00,232 >> Và do đó, điều quan trọng là để có mô hình này ở đâu 105 00:05:00,232 --> 00:05:03,440 người dùng có thể tương tác với cơ sở dữ liệu, chắc chắn, nhưng họ phải đi qua chúng tôi 106 00:05:03,440 --> 00:05:04,750 làm nó. 107 00:05:04,750 --> 00:05:06,530 Và đó là về cơ bản các ý tưởng với MVC. 108 00:05:06,530 --> 00:05:08,290 Đó là cố gắng để thực hiện bảo mật dữ liệu. 109 00:05:08,290 --> 00:05:13,130 Đó là cố gắng để bảo vệ các mô hình từ vô tình hay cố ý 110 00:05:13,130 --> 00:05:15,430 người sử dụng độc hại. 111 00:05:15,430 --> 00:05:17,392 >> Vì vậy, những gì sẽ xảy ra khi chúng tôi áp dụng mô hình này? 112 00:05:17,392 --> 00:05:19,850 Vâng, chúng ta tách các dữ liệu yêu cầu từ website-- của chúng tôi 113 00:05:19,850 --> 00:05:23,320 các model-- từ logic mà thực hiện trang web của chúng tôi 114 00:05:23,320 --> 00:05:27,160 functionality-- các controller-- và từ các thẩm mỹ đơn giản và trang 115 00:05:27,160 --> 00:05:31,497 mẫu mà bao gồm của chúng tôi dùng experience-- xem. 116 00:05:31,497 --> 00:05:32,330 Điều đó có nghĩa là gì? 117 00:05:32,330 --> 00:05:35,830 Vâng, nó có nghĩa là bạn có thể làm xem có thể nhìn thấy cho người sử dụng. 118 00:05:35,830 --> 00:05:37,800 Bạn có thể ẩn các mô hình đi. 119 00:05:37,800 --> 00:05:41,450 Và controllers-- người sử dụng có thể không có thể thao tác trực tiếp. 120 00:05:41,450 --> 00:05:43,230 Họ không cần phải truy cập vào mã PHP của bạn. 121 00:05:43,230 --> 00:05:45,646 Họ chỉ cần nhìn thấy một mẫu nơi họ có thể loại công cụ trong. 122 00:05:45,646 --> 00:05:47,605 Vì vậy, có thể dưới hình thức là một cái nhìn, bộ điều khiển 123 00:05:47,605 --> 00:05:52,835 là PHP mà hình thức nộp tới, các điều khiển làm cho một truy vấn đến các mô hình, 124 00:05:52,835 --> 00:05:55,210 các mô hình cung cấp thêm thông tin đến một cái nhìn khác nhau mà 125 00:05:55,210 --> 00:05:57,400 hiển thị thông tin cho bạn. 126 00:05:57,400 --> 00:05:59,640 >> Chương trình của bạn có thể truy cập tất cả các logic kinh doanh của bạn, 127 00:05:59,640 --> 00:06:02,940 nhưng người dùng của bạn có thể không trực tiếp truy cập logic kinh doanh của bạn. 128 00:06:02,940 --> 00:06:07,600 Và một đặc biệt, có lẽ, minh họa rõ ràng về điều này 129 00:06:07,600 --> 00:06:11,370 là bạn đã bao giờ nhận được một lỗi Forbidden 403. 130 00:06:11,370 --> 00:06:14,070 Bạn đã bao giờ đi đến một web trang và thấy 403 Forbidden? 131 00:06:14,070 --> 00:06:16,200 Đó là loại giống như 404 Not Found. 132 00:06:16,200 --> 00:06:20,590 >> 403 Forbidden có nghĩa là bạn đã cố gắng để truy cập một trang mà bạn không có quyền truy cập vào. 133 00:06:20,590 --> 00:06:23,790 Có lẽ trang web đó là sử dụng MVC tách 134 00:06:23,790 --> 00:06:28,600 đi trốn logic kinh doanh của mình mà cần phải tồn tại trên máy chủ để 135 00:06:28,600 --> 00:06:32,220 cho trang để làm việc, nhưng không muốn bạn để trực tiếp truy cập vào nó. 136 00:06:32,220 --> 00:06:33,990 Vì vậy, bạn có thể nhận được một lỗi Forbidden 403. 137 00:06:33,990 --> 00:06:36,073 >> Và nó sẽ thậm chí không quan trọng nếu bạn đã đăng nhập. 138 00:06:36,073 --> 00:06:38,570 Không có người dùng có thể chạm vào tập tin PHP dot này. 139 00:06:38,570 --> 00:06:41,080 Họ chỉ có thể chạm này, và one-- này 140 00:06:41,080 --> 00:06:48,140 một trong đó họ có thể touch-- lẽ có thể tương tác với các tập tin bị khóa xuống 141 00:06:48,140 --> 00:06:52,330 gián tiếp nhiều hơn với người dùng. 142 00:06:52,330 --> 00:06:57,610 >> Vì vậy, đôi khi chúng ta thấy quyền này lỗi, 403 Forbidden này. 143 00:06:57,610 --> 00:07:01,360 Làm thế nào để chúng ta thay đổi quyền truy cập như vậy rằng mọi thứ có thể hoặc có thể không được nhìn thấy? 144 00:07:01,360 --> 00:07:06,910 Khi chúng ta làm điều này thường là sử dụng một Lệnh Linux gọi chmod-- C-H-mod. 145 00:07:06,910 --> 00:07:11,080 >> Để làm điều này, định dạng là khá simple-- chmod, quyền hạn, 146 00:07:11,080 --> 00:07:13,710 và bất kỳ tập tin bạn muốn để áp dụng thay đổi. 147 00:07:13,710 --> 00:07:17,380 Vì vậy, có thể bạn sẽ thấy một cái gì đó như this-- chmod 600 helpers.php. 148 00:07:17,380 --> 00:07:21,870 Hoặc có thể bạn muốn xem this-- chmod một cộng x bao gồm thư mục. 149 00:07:21,870 --> 00:07:23,112 Là điều này không có nghĩa là mặc dù? 150 00:07:23,112 --> 00:07:25,570 Vì vậy, có hai cách khác nhau rằng quyền thường 151 00:07:25,570 --> 00:07:26,920 áp dụng bằng cách sử dụng chmod. 152 00:07:26,920 --> 00:07:29,350 Việc đầu tiên được gọi là bát phân số phương pháp. 153 00:07:29,350 --> 00:07:32,160 Điều này thường được áp dụng điều khoản đến ba loại khác nhau 154 00:07:32,160 --> 00:07:34,300 của người sử dụng cùng một lúc. 155 00:07:34,300 --> 00:07:40,120 Vì vậy, chmod 711 file sẽ cho phép bạn bên phải để đọc, viết, và thực thi 156 00:07:40,120 --> 00:07:43,050 tập tin của bạn, sẽ cho phép others-- đặc biệt 157 00:07:43,050 --> 00:07:46,469 nhóm của bạn và các world-- để chỉ thực thi các tập tin. 158 00:07:46,469 --> 00:07:47,760 Đó là những gì điều này chuyển đến. 159 00:07:47,760 --> 00:07:50,150 Số đầu tiên có là những gì bạn có thể làm, 160 00:07:50,150 --> 00:07:52,370 số thứ hai là những gì nhóm của bạn có thể làm, 161 00:07:52,370 --> 00:07:54,470 và thứ ba là những gì thế giới có thể làm được. 162 00:07:54,470 --> 00:07:57,930 Bất cứ ai là bạn đã ghé thăm trang, đó là thế giới. 163 00:07:57,930 --> 00:08:01,130 >> Những con số này là gì thực sự dịch cho dù? 164 00:08:01,130 --> 00:08:03,130 Vì vậy, về cơ bản các dịch như thế này. 165 00:08:03,130 --> 00:08:06,300 Nếu được sự cho phép là bằng không, không có gì có thể xảy ra. 166 00:08:06,300 --> 00:08:10,239 Nếu đó là một, bạn có thể thực hiện file-- nếu đó là sự cho phép của bạn. 167 00:08:10,239 --> 00:08:13,030 Nếu nó là hai, bạn có thể viết các tập tin nhưng bạn không thể làm bất cứ điều gì khác. 168 00:08:13,030 --> 00:08:14,967 Nếu đó là ba, bạn có thể viết và thực hiện. 169 00:08:14,967 --> 00:08:16,050 Và như vậy, như bạn có thể nhìn thấy. 170 00:08:16,050 --> 00:08:19,320 Và bảy có nghĩa là bạn có thể làm tất cả mọi thứ. 171 00:08:19,320 --> 00:08:21,760 >> Vậy tại sao những gọi là số bát phân? 172 00:08:21,760 --> 00:08:24,537 Vâng, nếu bạn nghĩ về nó, ở đây giống như Choáng và yeses, 173 00:08:24,537 --> 00:08:26,620 và nếu chúng ta nghĩ về họ như hộp màu đỏ và màu xanh lá cây, 174 00:08:26,620 --> 00:08:28,161 có thể làm cho nó một ít rõ ràng hơn. 175 00:08:28,161 --> 00:08:31,410 Nhưng nếu chúng ta suy nghĩ về những hộp màu đỏ là số không và các hộp màu xanh lá cây như những người thân, 176 00:08:31,410 --> 00:08:33,659 thực tế đây chỉ là bộ các số nhị phân, phải không? 177 00:08:33,659 --> 00:08:42,510 000 dịch sang thập phân 0; 001, thập phân 1; 010 là số thập phân 2, và như vậy. 178 00:08:42,510 --> 00:08:44,840 Và vì vậy chúng tôi gọi những bát phân số bởi hiện 179 00:08:44,840 --> 00:08:46,410 tám khả năng khác nhau. 180 00:08:46,410 --> 00:08:48,118 Có tám chữ số khác nhau nếu chúng tôi 181 00:08:48,118 --> 00:08:50,220 nói về ba bit của information-- 182 00:08:50,220 --> 00:08:52,940 bit đọc, viết bit, và các bit thực thi. 183 00:08:52,940 --> 00:08:56,910 Vì vậy, bây giờ bạn có thể nói chuyện nhị phân, số thập phân, hex, và bát phân. 184 00:08:56,910 --> 00:09:00,250 Vì vậy, bạn biết làm thế nào để giao tiếp với máy tính trong bốn số khác nhau 185 00:09:00,250 --> 00:09:02,640 hệ thống, vì vậy đó là khá mát mẻ. 186 00:09:02,640 --> 00:09:05,200 >> Vì vậy, bên cạnh những bát phân Đề án cho phép, có 187 00:09:05,200 --> 00:09:08,520 cũng cho phép biểu tượng Đề án này là hơi khác nhau 188 00:09:08,520 --> 00:09:13,290 và thường được sử dụng tốt nhất để áp dụng hoặc loại bỏ một phép trên bảng. 189 00:09:13,290 --> 00:09:17,070 Vì vậy, một cộng với chmod x tập có thể thêm vào bên phải 190 00:09:17,070 --> 00:09:20,270 để thực hiện cho cả ba loại users-- 191 00:09:20,270 --> 00:09:22,890 mình, nhóm của bạn, và trên thế giới. 192 00:09:22,890 --> 00:09:26,060 Cộng với đó là một phần bổ sung. 193 00:09:26,060 --> 00:09:28,430 Quyền để thực hiện, đó là x. 194 00:09:28,430 --> 00:09:34,330 Và thực tế là nó áp dụng cho tất cả ba nhóm người dùng sẽ là một. 195 00:09:34,330 --> 00:09:39,330 >> Vì vậy this-- một x-- cộng có lẽ sẽ để được chính xác giống như chmod 711 196 00:09:39,330 --> 00:09:44,970 nộp, bởi vì nếu bạn quay trở lại và nhìn vào sơ đồ số bát phân, 197 00:09:44,970 --> 00:09:47,990 những người thân và bảy cho chúng tôi quyền thực thi một file. 198 00:09:47,990 --> 00:09:49,880 Vì vậy, đây có lẽ là cùng. 199 00:09:49,880 --> 00:09:53,280 >> Và bạn có thể sử dụng điều này hướng dẫn tham khảo cho những gì 200 00:09:53,280 --> 00:09:59,430 những điều khác nhau trong tượng trưng cấu trúc chmod-ing là. 201 00:09:59,430 --> 00:10:03,522 Các mặt hàng ở đây sẽ là màu xanh lá cây nơi mà tất cả các ví dụ màu xanh 202 00:10:03,522 --> 00:10:04,230 Một giây trước. 203 00:10:04,230 --> 00:10:05,740 Màu xanh sẽ là màu xanh. 204 00:10:05,740 --> 00:10:07,450 Các cam sẽ được màu da cam. 205 00:10:07,450 --> 00:10:10,360 Vì vậy, bạn có thể áp dụng điều cần của bạn nhóm, cho người khác, cho người sử dụng, 206 00:10:10,360 --> 00:10:11,510 hoặc để tất cả mọi người. 207 00:10:11,510 --> 00:10:13,670 Bạn có thể cung cấp cho họ đọc, viết, và thực hiện truy cập, 208 00:10:13,670 --> 00:10:17,130 và bạn có thể thêm hoặc loại bỏ hoặc chỉ định chính xác một bộ 209 00:10:17,130 --> 00:10:20,310 các điều khoản sử dụng mô hình này. 210 00:10:20,310 --> 00:10:22,530 >> Làm thế nào để chúng tôi kiểm tra những gì một chương trình cho phép tập tin là? 211 00:10:22,530 --> 00:10:25,770 Trước khi chúng ta thay đổi nó, nó có lẽ tốt để thực sự biết 212 00:10:25,770 --> 00:10:27,800 những gì các tập tin dứơi. 213 00:10:27,800 --> 00:10:31,370 Một cách để làm điều này là để chạy ls nhưng chỉ tinh chỉnh nó một chút. 214 00:10:31,370 --> 00:10:35,570 Vì vậy, nếu tôi gõ ls dash l-- đó là một chữ thường l-- thể 215 00:10:35,570 --> 00:10:36,870 Tôi sẽ nhìn thấy một cái gì đó như thế này. 216 00:10:36,870 --> 00:10:39,490 Có vẻ một chút khó hiểu, nhưng các phần mà chúng tôi thực sự quan tâm 217 00:10:39,490 --> 00:10:41,000 là những thứ trên trái trên đó. 218 00:10:41,000 --> 00:10:43,380 Điều đó thực sự chỉ định một kế hoạch cho phép tập tin. 219 00:10:43,380 --> 00:10:47,470 Và bạn có thể cho biết vì nó có r của, w, và x của xen kẽ. 220 00:10:47,470 --> 00:10:49,750 >> Những three-- đầu tiên bỏ qua một trong những đầu tiên 221 00:10:49,750 --> 00:10:51,870 cho một thứ hai, chúng tôi sẽ tăng gấp đôi trở lại. 222 00:10:51,870 --> 00:10:54,080 Những người đầu tiên ba sau các first-- vậy lần thứ hai, 223 00:10:54,080 --> 00:10:56,700 thứ ba, và các nhân vật thứ tư đó chuỗi 10 ký tự 224 00:10:56,700 --> 00:10:59,150 là các quyền mà bạn có. 225 00:10:59,150 --> 00:11:02,390 Vì vậy, dường như tôi có thể đọc, viết, và thực thi PHP. 226 00:11:02,390 --> 00:11:04,870 Tôi có thể đọc, viết, và thực thi PHP Webdev, 227 00:11:04,870 --> 00:11:07,786 và tôi có thể đọc và viết test.php. 228 00:11:07,786 --> 00:11:11,020 >> Nhóm của tôi có thể làm điều này. 229 00:11:11,020 --> 00:11:14,960 Vì vậy, rõ ràng với PHP và thư mục PHP Webdev, 230 00:11:14,960 --> 00:11:18,330 nhóm của tôi có thể viết thư cho họ, nhưng không có gì khác. 231 00:11:18,330 --> 00:11:20,210 Và thế giới không thể làm gì cả. 232 00:11:20,210 --> 00:11:22,115 Vì vậy, những tập tin này không truy cập công khai 233 00:11:22,115 --> 00:11:23,990 và nếu tôi đã cố gắng để truy cập chúng và tôi đã không 234 00:11:23,990 --> 00:11:29,160 chạy Apache để làm cho họ dễ tiếp cận, sau đó tôi sẽ nhận được một lỗi 403. 235 00:11:29,160 --> 00:11:29,950 Đó là một thất bại. 236 00:11:29,950 --> 00:11:32,916 Tôi đã cố gắng để truy cập vào một tập tin nhưng tôi không có quyền để làm điều đó. 237 00:11:32,916 --> 00:11:34,290 Và đó là nhân vật đầu tiên là gì? 238 00:11:34,290 --> 00:11:39,120 Vâng, có thể bạn có thể ngoại suy ở đây là các d's tham khảo thư mục 239 00:11:39,120 --> 00:11:42,080 và dấu gạch ngang dùng để chỉ cái gọi là "các tập tin thường xuyên." 240 00:11:42,080 --> 00:11:45,430 Và có lẽ bạn đã nhìn thấy điều này khi bạn đã cố gắng để loại bỏ một tập tin bằng cách sử dụng rm. 241 00:11:45,430 --> 00:11:49,310 Bạn đã nhìn thấy các thông điệp bí ẩn "loại bỏ tập tin thường xuyên" - trong trường hợp này, 242 00:11:49,310 --> 00:11:51,020 nó muốn được test.php. 243 00:11:51,020 --> 00:11:53,900 Tập tin thường xuyên là một cái gì đó không phải là một thư mục. 244 00:11:53,900 --> 00:11:56,191 Có một vài người khác ở đây, nhưng nói chung bạn 245 00:11:56,191 --> 00:11:59,179 đi xem d's cho các thư mục và không có gì cho các yếu tố đầu tiên. 246 00:11:59,179 --> 00:12:00,720 Nhưng đó là thực sự tất cả để có nó. 247 00:12:00,720 --> 00:12:03,210 Bạn có thể kiểm tra tập tin quyền sử dụng ls dash l, 248 00:12:03,210 --> 00:12:05,100 bạn có thể thay đổi chúng bằng cách sử dụng chmod. 249 00:12:05,100 --> 00:12:09,430 Và, tất nhiên, sử dụng these-- thay đổi các điều khoản 250 00:12:09,430 --> 00:12:14,180 để thực thi mô hình MVC này để bảo vệ các dữ liệu trên trang web của bạn 251 00:12:14,180 --> 00:12:16,180 và không cho phép người sử dụng để truy cập vào tất cả mọi thứ, 252 00:12:16,180 --> 00:12:19,120 nhưng chỉ với những thứ mà họ cần để truy cập để cho trang của bạn 253 00:12:19,120 --> 00:12:22,110 làm việc theo cách bạn muốn nó để làm việc. 254 00:12:22,110 --> 00:12:23,040 >> Tôi Doug Lloyd. 255 00:12:23,040 --> 00:12:24,880 Đây là CS50. 256 00:12:24,880 --> 00:12:27,286