使用UBUNTU上的PHP在www目录中创建文件夹

时间:2014-04-06 22:12:31

标签: php ubuntu web chmod

我正在尝试使用php脚本创建一个文件夹(在www目录中)。我在UBUNTU上做了一些配置,但仍然无法正常工作。

Ubuntu配置:(用户:admin - group:www-data)

sudo adduser admin www-data
sudo chown -R www-data:www-data /var/www
sudo chmod -R g+rw /var/www

PHP代码:

function makeDir($dir)
{
$ret = @mkdir($dir, 0700);
return $ret === true || is_dir($dir);
}

错误:不要创建目录。

阅读其他一些帖子,我发现了这个UBUNTu配置,但仍无效:

sudo chmod 777 /var/www
sudo ls -l /var | grep www
sudo usermod -G www-data admin
sudo chmod 770 /var/www
sudo ls -l /var | grep www

2 个答案:

答案 0 :(得分:0)

试试这个:

shell_exec("md $dir");

答案 1 :(得分:0)

通常取决于用户和用户。 httpd正在运行的组,如果使用cgi或apache mod方法。 apache的用户需要访问权限才能创建目录。我的解决方案 - 通常是 - 允许对组进行写访问。例如,与nobody一起运行(最后一行设置文件访问权限)

chown -R :nobody *
chmod -R 770 *
find . -type f -print0 | xargs -0 chmod 640

在此之后,你可以简单地创建目录&来自php中的文件,但您可能需要/想要更改其权限,以便您可以在需要时通过主机帐户“手动”访问它们。