解決方法:
確保所有文件屬於Apache組和用戶。Ubuntu裏面,指的是www - data組和用戶
chown -R www-data:www-data /path/to/webserver/www
接下來賦予www-data組的所有成員以讀和寫的權限。
chmod -R g+rw /path/to/webserver/www
現在mkdir()應該可以正常工作了。
來自:
http://stackoverflow.com/questions/5246114/php-mkdir-permission-denied-problem
追加:
在這之後,我們發現,平時用自己的賬戶的時候,www目錄沒有寫權限,幹什麼都要sudo,怎麼辦?
把自己加入www-data組就可以,這是我的解決方法。
注意G一定大寫,小寫表示覆蓋當前組
sudo usermod -G www-data yourUsername
然後註銷登錄即可。
這樣一來,我發現自己不再sudoer之列了,也就是不能使用sudo su了,問題很嚴重。
解決辦法是:
重啓進入高級,recovery,掛到root,然後
mount -o remount,rw /
運行visudo
,
然後在
User privillege specification 下面複製粘貼root開頭的一行,把root改成自己的用戶名就可以了,然後ctrl+x退出時選擇y保存,這樣我的問題就解決了。