Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

Tôi có một thư mục video trên máy chủ của mình có 755 quyền. Vấn đề là: Khi ai đó chuyển sang tải lên tệp video, nó không thể được tải lên thư mục đó vì lỗi cấp phép.

Nếu tôi thay đổi sự cho phép thành 777, thì video có thể được tải lên. Nhưng tôi không muốn cho phép thư mục cho phép 777 vì lý do bảo mật.

Có cách nào trong PHP để thay đổi tạm thời sự cho phép thành 777 trong khi tải lên video không?

Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

Wasim

1.14611 Huy hiệu bạc25 Huy hiệu đồng11 silver badges25 bronze badges

Đã hỏi ngày 5 tháng 3 năm 2013 lúc 8:26Mar 5, 2013 at 8:26

Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

Sumit Bijvanisumit BijvaniSumit Bijvani

8.07217 Huy hiệu vàng49 Huy hiệu bạc82 Huy hiệu đồng17 gold badges49 silver badges82 bronze badges

1

PHP cung cấp một chức năng, chmod() cho nhiệm vụ.

Cố gắng thay đổi chế độ của tệp được chỉ định thành chế độ được đưa ra trong chế độ.

Bạn có thể đặt nó trong một câu lệnh if và nếu nó trả về sai, bạn có thể bỏ qua phần tải lên.


Việc sử dụng sẽ giống như

if( chmod($path, 0777) ) {
    // more code
    chmod($path, 0755);
}
else
    echo "Couldn't do it.";

Như được mô tả trong hướng dẫn chức năng CHMOD, $mode phải ở định dạng bát phân - với số 0 hàng đầu, tức là chmod($path, 0777)

Đã trả lời ngày 5 tháng 3 năm 2013 lúc 8:29Mar 5, 2013 at 8:29

hjpotter92hjpotter92hjpotter92

76.5K34 Huy hiệu vàng138 Huy hiệu bạc177 Huy hiệu đồng34 gold badges138 silver badges177 bronze badges

3

Có một cách (PHP cung cấp chức năng chmod) nhưng vì PHP không phải là chủ sở hữu của thư mục, bạn sẽ không thể thay đổi quyền. Và tôi nghĩ rằng bạn đang giải quyết vấn đề sai. Thêm máy chủ web và PHP trong cùng một nhóm và đưa 775 vào thư mục.

Đã trả lời ngày 5 tháng 3 năm 2013 lúc 8:29Mar 5, 2013 at 8:29

Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

3

76.5K34 Huy hiệu vàng138 Huy hiệu bạc177 Huy hiệu đồng

$config['remove_spaces'] = FALSE;
$config['upload_path'] = $path;
$this->upload->initialize($config);
$this->load->library('upload', $config);   

Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

Có một cách (PHP cung cấp chức năng chmod) nhưng vì PHP không phải là chủ sở hữu của thư mục, bạn sẽ không thể thay đổi quyền. Và tôi nghĩ rằng bạn đang giải quyết vấn đề sai. Thêm máy chủ web và PHP trong cùng một nhóm và đưa 775 vào thư mục.

Bạn phải khởi tạo cấu hình cho tải lên, như thế này:4 gold badges34 silver badges37 bronze badges

WilqDec 6, 2013 at 6:44

Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

1

2.2364 Huy hiệu vàng34 Huy hiệu bạc37 Huy hiệu đồng

Đã trả lời ngày 6 tháng 12 năm 2013 lúc 6:44

Bạn có thể sử dụng chức năng chmod().Mar 5, 2013 at 8:30

Để biết thêm thông tin, hãy thử ở đâyEdwin Alex

Đã trả lời ngày 5 tháng 3 năm 2013 lúc 8:304 gold badges27 silver badges49 bronze badges

Edwin Alexedwin Alex: You cannot undo the file permissions that are changed by the script below. Proceed with extreme caution.

5.0784 Huy hiệu vàng27 Huy hiệu bạc49 Huy hiệu đồng: this code should only be used if you remember to delete it immediately after use. As above, its use may put your site into an insecure state.


//replace dirname(__FILE__) with desired folder.
file_fix_directory(dirname(__FILE__));

function file_fix_directory($dir, $nomask = array('.', '..')) {
  if (is_dir($dir)) {
     // Try to make each directory world writable.
     if (@chmod($dir, 0777)) {
       echo "

Made writable: " . $dir . "

"; } } if (is_dir($dir) && $handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if (!in_array($file, $nomask) && $file[0] != '.') { if (is_dir("$dir/$file")) { // Recurse into subdirectories file_fix_directory("$dir/$file", $nomask); } else { $filename = "$dir/$file"; // Try to make each file world writable. if (@chmod($filename, 0666)) { echo "

Made writable: " . $filename . "

"; } } } } closedir($handle); } }

CẢNH BÁO: Bạn không thể hoàn tác các quyền của tệp được thay đổi bởi tập lệnh bên dưới. Tiến hành với sự thận trọng cực độ.

Quan trọng: Mã này chỉ nên được sử dụng nếu bạn nhớ xóa nó ngay sau khi sử dụng. Như trên, việc sử dụng nó có thể đưa trang web của bạn vào trạng thái không an toàn.

Hoặc bạn có thể sử dụng thiết bị đầu cuối cho điều nàyNov 21, 2021 at 16:09

Hướng dẫn how can i give permission to a folder in php? - làm thế nào tôi có thể cấp quyền cho một thư mục trong php?

chmod -R 755 public_html/test
Anjani Barnwal

Đã trả lời ngày 21 tháng 11 năm 2021 lúc 16:091 gold badge15 silver badges22 bronze badges

Làm cách nào để thay đổi quyền của thư mục trong PHP?

Thay đổi quyền cho tệp "test.txt":..
// Đọc và viết cho chủ sở hữu, không có gì cho mọi người khác. Chmod ("test.txt", 0600) ;.
// Đọc và viết cho chủ sở hữu, đọc cho mọi người khác. chmod ("test.txt", 0644) ;.
// Mọi thứ cho chủ sở hữu, đọc và thực hiện cho mọi người khác. Chmod ("test.txt", 0755) ;.

Làm cách nào để cấp phép cho một thư mục?

Cấp quyền truy cập vào một tập tin hoặc thư mục..
Truy cập hộp thoại Thuộc tính ..
Chọn tab Bảo mật ..
Nhấp vào Chỉnh sửa. ....
Nhấp vào Thêm ... ....
Trong nhập tên đối tượng để chọn văn bản, nhập tên của người dùng hoặc nhóm sẽ có quyền truy cập vào thư mục (ví dụ: 2125. ....
Bấm OK. ....
Bấm OK trên cửa sổ bảo mật ..

Làm cách nào để quản lý quyền trong PHP?

Làm thế nào bạn có thể thiết lập quyền tệp PHP ?..
Lập kế hoạch cho những quyền bạn muốn gán cho người dùng tệp của mình.Bản đồ người dùng tệp hiện có đến mức truy cập mà họ yêu cầu và cung cấp cho họ các quyền tương ứng.....
Cập nhật người dùng và quyền.....
Theo dõi các tệp mới theo thời gian.....
Cập nhật thường xuyên ..