Một câu hỏi bỏ qua quyền tệp khi lưu tệp khi không tồn tại, được tạo ban đầu dưới dạng tệp mới.Quyền hạn tệp và CHMOD: Cách đặt 777 trong PHP khi tạo tệp?
Hiện tại, mọi thứ đều ổn và tệp đã lưu dường như có chế độ 644
.
Tôi phải thay đổi điều gì ở đây, để làm cho các tệp lưu dưới dạng chế độ 777
?
Cảm ơn một nghìn vì bất kỳ gợi ý, manh mối hoặc câu trả lời nào. Mã mà tôi nghĩ là có liên quan ở đây tôi đã bao gồm:
/* write to file */
self::writeFileContent($path, $value);
/* Write content to file
* @param string $file Save content to wich file
* @param string $content String that needs to be written to the file
* @return bool
*/
private function writeFileContent($file, $content){
$fp = fopen($file, 'w');
fwrite($fp, $content);
fclose($fp);
return true;
}
Lưu ý rằng chế độ 0777 là ** nguy hiểm **. Xem http://stackoverflow.com/questions/2338641/in-a-php-apache-linux-context-why-exactly-is-chmod-777-dangerous –
@Phoenix cảm ơn. Tôi guese 0766 sẽ đủ (cần phải cho phép tất cả các quyền viết). là tốt hơn? – Sam
0766 tốt hơn; điều đó sẽ ngăn chặn việc thực thi mã tùy ý. Tệp có cần phải là ** thế giới ** có thể ghi được không hoặc nó có đủ nếu chỉ có, Apache có thể ghi vào nó không? Bạn có một tập hợp các ứng dụng cần để có thể ghi các tệp này không? Điều gì xảy ra nếu bạn làm cho chúng chạy như cùng một nhóm và đặt chế độ 0764 thay thế? –