我有一个用 php 编写的 web 应用程序,在 Linux 服务器中使用 Apache,问题是该服务器可以被许多用户访问,我想要做的是,限制 htdocs 文件夹而不破坏需要 Apache 的权限。显示 Web 应用程序。我的想法是这样的:
用户管理员(在 sudo 组中,并且在管理员组中)有权访问 htdocs。
用户 Deb(在 sudo 组和标准组中)无权访问 htdocs
通过访问,我的意思是复制和修改 php 文件。
您可以将htdocs
文件夹设置为只能按组读取www-data
,并将允许对其进行更改的用户添加到www-data
组中。
drwxrwx--- www-data www-data vhosts/
在大多数 Linux 发行版中,Apache 在特定用户下运行,例如apache
在 Red Hat 和www-data
Debian 和 Ubuntu 下。root 用户和 sudo 中的每个用户都可以访问文件系统上的所有文件。结合这些可以为您提供解决方案:将 htdocs 目录的所有者更改为运行服务器的用户,并将 htdocs 目录的权限更改为 0700。所以:
$ cd /[path to parent dir of htdocs]/
$ chown <apache user>:<apache group> htdocs
$ chmod 0700 htdocs
这样,只有 apache 服务器用户、root 和 sudo 组中的用户可以访问 htdocs 目录。