簡體   English   中英

fopen()權限盡管具有正確的文件目錄也被拒絕

[英]fopen() Permission Denied despite having correct file directory

$handle = fopen('/Applications/XAMPP/xamppfiles/htdocs/test/file.txt', 'w');

我嘗試執行上述操作,每次嘗試執行此操作時,瀏覽器都會顯示以下語句:

警告:fopen(/Applications/XAMPP/xamppfiles/htdocs/test/file.txt)[function.fopen]:無法打開流:在/Applications/XAMPP/xamppfiles/htdocs/test/index.php中的權限被拒絕(第26行) 。

我嘗試瀏覽具有相同類型問題的已回答問題,但我嘗試過的大多數方法均無效。 例如,編寫完整目錄...

也許您沒有權限訪問該文件。 困擾之一是,您必須將CHMOD更改為例如777 您可以將其與ftp瀏覽器或PHP配合使用。

chmod("/somedir/somefile", 777);

默認情況下,安裝XAMPP時,htdocs文件夾沒有任何讀取權限。 您可以像這樣通過終端更改權限。

cd /Application/XAMPP/xamppfiles/htdocs/test/
sudo chmod 0664 file.txt

或者,您可以遞歸設置所有文件和文件夾的所有權限級別

cd /Application/XAMPP/xamppfiles/
sudo chmod -R 0664 htdocs/

您可以將chmod改為777 ,但這是有風險的安全性。 我猜您真正想要的是更改文件的所有權。 您可以使用chown進行此操作。 PHP通常以用戶www-data身份運行,因此您將運行類似以下的命令。

sudo chown www-data:root path/to/file.ext

如果您對文件具有文件權限,例如664 ,那將為PHP授予6權限(讀取和寫入),而不是4權限(僅讀取)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM