我正在运行Ubuntu 8.04 LTS,它是我的networking服务器(LAMP)。
我的网站是:
/var/www/website/trunk/html/
我创build了一个用于上传用户的目录,位于:
/var/www/vault/
我做了:
chown -R www-data /var/www/vault/
甚至,勇敢地:(是一个绝望的时刻)
chmod 777 -R /var/www/vault
我的PHP脚本无法创build子目录下:
/var/www/vault
我需要它,我有运气上传文件的目录,但是,我得到这样的错误,当它试图做目录…
Warning: mkdir() [function.mkdir]: Permission denied in /var/www/website/trunk/html/jquery.uploadify/uploadretro.php on line 149 File /var/www/website/trunk/html../../../../vault/4d4d3092c24be8a8dac2ec269e969446.jpg does not exist.
任何人都可以帮助我,或build议一些东西?
我的PHP INI文件设置正确,允许上传,5米大小。
有任何想法吗?
更多信息从上面的错误149行的命令是:
mkdir(str_replace('//','/',$targetPath), 777, true);
权限:
drwxrwxrwx 2 www-data root 4.0K Jun 3 06:04 vault
为了帮助debugging访问,我build议你去系统,并运行一个像sudo -i -u www-data这样的命令 。 这将为您提供与Web服务器相同的权限。 然后,简单地转到/ var / www / vault目录,看看是否可以创build文件和目录。
如果你可以创build文件/目录,那么你的问题不是权限,而是在你的应用程序中被破坏。
哦,顺便说一句,你的道路看起来破碎了。
/var/www/website/trunk/html../../../../vault/
特别要注意的是html .. 如果html ..是正确的值,那么该path将parsing为/ var / vault ,而不是/ var / www / vault 。
重新启动Apache。