如何正确设置Ubuntu Linux系统的/var/www/目录可写?

如何正确设置Ubuntu Linux系统的/var/www/目录可写?

我是一名软件开发人员,因此我不太了解操作系统配置细节,但我遇到了以下问题。

我已经安装了一个环境Ubuntu Linux专用于开发的系统(它在我的个人电脑上,它不是生产服务器)。

所以我想设置/var/www作为 Aptana(我用于 PHP 开发的 IDE)的工作区,但我无法做到这一点,因为我没有在此目录中写入的权限(我认为是我的登录用户没有此权限)。

所以我知道也许我可以通过简单地通过以下方式更改此权限来解决这个问题:

sudo chmod -R 777 /var/www/

我认为它使任何内容都可读、可写、可执行/var/www/目录,对吗?但对谁来说呢?对可以在我的系统上注册的每个用户来说,还是只对已登录的用户来说?

在网上读到,我觉得(也许,我绝对不确定)我可以得到同样的结果(写入/var/www/目录)通过执行以下操作:

sudo chown -R myUserName:www-data /var/www/
sudo chmod -R g+s /var/www/

这 2 个命令是否符合我的目的?具体是什么?我正在尝试阅读官方文档,在我看来,它的工作方式如下:

  1. 首先,我将我的用户设置为/var/www/目录(所以这意味着它可以写入此目录及其所有子目录,因为使用 -R 参数?)并分配www-数据组。但这是什么www-数据组?它是标准 Linux 组还是一个仅允许组成员的新组?

  2. 我真的不知道第二条语句到底是干什么的。它起什么作用?

有什么解决方案更好?

答案1

基本上第一个命令:

sudo chmod -R 777 /var/www/

使其可由任何人(任何用户)读取、写入和执行。后面的命令是正确的,因为您可以设置chownwww-datawww-data是 Apache 的默认用户/组。

或者您可以创建一个新组并将您自己和 www-data 添加到其中,然后使用 为该组分配文件夹权限chown

另外,除了使用数字 chmod 值外,您还可以使用 ,chmod -R ugo+rwx folder这意味着授予用户、组和其他人 => 对此文件夹的读取、写入和执行权限。 您也可以用类似的方式删除权限chmod -R ugo-rwx folder

设置目录g+s会使该目录中创建的所有新文件的组设置为该目录的组。

相关内容