2012-01-16 339 views
2

我想解決這個錯誤,但我沒有運氣。PHP權限被拒絕的錯誤

Warning: mkdir() [function.mkdir]: Permission denied in Users/myuser/Sites/mysite.me/git/framework/libs/smarty/sysplugins/smarty_internal_write_file.php 

我不斷收到mkdir() [function.mkdir]: permission denied錯誤在一個特定的文件夾。我已經確定通過linux的chmod 777 foldername,它仍然沒有工作。我通過XAMPP在本地機器上執行此操作。我也確保從GUI的角度確保它是爲每個人閱讀和寫入的。我仍然沒有運氣。思考?

我得到一個警告爲mkdirchmodtouchrenameinclude

+3

請記住,您還需要在父目錄上使用'+ x' - 你有嗎? – derobert 2012-01-16 17:18:11

+0

我正在使用Mac OS X Lion。 smarty的父目錄有drwxrwxrwx。我將如何添加+ x? – wowzuzz 2012-01-16 17:20:07

+0

檢查您的父目錄權限,特別是htdocs – 2012-01-16 17:20:18

回答

1

對於任何人誰從那裏這裏結束了:

https://stackoverflow.com/questions/12801733/php-upload-outside-web-root-permission-denied-to-mkdir被標記爲精確複製此線程。該主題也被交叉發佈到AWS論壇,其中received an answer


這就是說,在這裏接受的答案居然是錯誤。 (可能不是錯誤錯誤,但仍然有些錯誤。)解決此問題的更好方法是讓Apache進程的所有者/組匹配您希望Apache的目錄的所有者/組(並反過來,PHP )能夠寫入。

這樣,您授予訪問特定受管用戶而不是打開太寬泛的文件系統權限。

0

爲mkdir創建目錄的所有用戶(或至少web服務器用戶,例如www-data for apache)添加寫入權限。

+0

你是指chmod 777文件的父目錄嗎? – wowzuzz 2012-01-16 17:30:53

+0

不,你有更改目錄的權限,其中「mkdir」創建一個目錄。 – daya 2012-01-16 17:34:23