允许 apache 用户编辑文件

允许 apache 用户编辑文件

目前,在我的 VPS 上,我使用 apache2 在不同的虚拟主机上托管多个网站。

每个新网站的创建过程如下:

adduser websitename
su websitename
mkdir ~/public_html
mkdir ~/logs
exit    
chmod g+s ~/public_html/
chown www-data:websitename ~/public_html/

然后,我添加 websitename.com 虚拟主机文件/etc/apache2/sites-available/并运行a2ensite命令并重新启动 apache2 进程。

我有两个问题:

  1. 目前,由于某种原因,www-data没有真正的权限来编辑文件/public_html/,我该如何解决这个问题?
  2. 在创建 vhost 的过程中您还有什么要添加的吗?

附言:我正在使用 Linode 上托管的 Ubuntu 10.04。

答案1

此命令:

chown www-data:websitename ~/public_html/

更改目录的所有者和组,但不更改目录下的任何内容。从您的问题中无法清楚了解目录内容的确切来源,但假设在运行命令时目录中有内容chown,则需要告诉它递归目录,以便将这些权限应用于 ~/public_html 的内容,而不仅仅是目录本身。

chown -R www-data:websitename ~/public_html/

人们通常不赞成授予 Web 服务器写入任何内容的权限,您应该考虑它真正需要能够写入哪些文件才能正常运行,并且只允许它写入那些特定的文件。

相关内容