我有一個安裝了 Ubuntu 10.04、Apache2 和 PHP 5.3.2 的開發桌面。我已向我的 Web 應用程式根資料夾授予 0777 權限,並且 Apache2 也在當前使用者名稱下運行。但有時以下文件出現錯誤,
file_put_contents(/var/www/kohana_project/application/cache/kohana_find_file_paths):無法開啟流:權限被拒絕。
對於每個請求,上述文件都需要更新和執行,但很少發生錯誤。有人知道如何解決這個問題嗎?
一件事是目前登入的使用者和 www-data 對 kohana_project 目錄及其內容擁有完整權限。
答案1
可能的原因是你沒有改變擁有者文件的,儘管您已經更改了權限。 :)
所以首先你必須得到所有者的名字阿帕契伺服器正在運行,並將相同的所有者分配給您/var/www/<file/folder>
。
按著這些次序:
找到該物品的主人httpd。執行此命令即可取得所有者httpd:
sudo ps aux | grep httpd
第一列將是業主說的某人。如果你得到像這樣的數字1001或任何其他數字代替某人然後執行此命令以取得所有者名稱:
grep 1001 /etc/passwd
同樣,第一個欄位將是進程的擁有者。
現在更改文件/資料夾的擁有者萬維網到某人
sudo chown -R somebody /var/www/<path to the file/folder>
重新啟動您的伺服器
sudo /etc/init.d/apache2 restart
就是這樣。希望它能幫助你。 :)