2016-04-05 67 views
0

我試圖使用取消鏈接刪除一個文件我currecntly有下面的代碼刪除文件:yii2無法使用取消鏈接

unlink(Yii::getAlias('@webroot') . $userprofile->avatar); 

因爲我已經回聲使用的視圖中要檢查的路徑是正確的,它指向我想刪除正確的文件,但我得到了以下錯誤:

unlink(/Applications/MAMP/htdocs/advanced/Final Prototype): Operation not permitted 

難道這是一個權限的事情在不是老闆,所以我怎麼能檢查方面,我需要對文件或某些目錄執行chmod操作?

注意:Mac OS X上工作,使用MAMP

回答

1

更改Web目錄的所有者和文件到您的Web服務器用戶(例如www-data爲Apache)。

在apache中,您可以通過查找UserGroup,在* inx系統上找到用戶和組,從httpd.conf。比如我httpd.conf文件上的Arch Linux是:

<IfModule unixd_module> 
# 
# If you wish httpd to run as a different user or group, you must run 
# httpd as root initially and it will switch. 
# 
# User/Group: The name (or #number) of the user/group to run httpd as. 
# It is usually good practice to create a dedicated user and group for 
# running httpd, as with most system services. 
# 
User http 
Group http 
</IfModule> 

所以用這個配置,你可以在Yii的項目的根目錄下運行chown -R http:http web

如果問題持續存在,您還需要更改網絡文件夾的權限,以便在用戶和組上擁有寫入規則(chmod -R 755 web可能是此臨時解決方案,您必須將文件移動到上傳文件夾並更改那到755)。