【问题标题】:apache and File system permissionsapache和文件系统权限
【发布时间】:2014-06-02 15:30:42
【问题描述】:

在 CentOS 或 RHEL 中默认安装 apache,查看 /var/www/ 中 html 目录的文件系统权限

drwxr-xr-x. 2 root root 4096 Aug 13  2013 html

我的网站可以正常工作,我没有任何问题,但是我想知道为什么以及何时需要将目录设置为 apache:apache?

谢谢

【问题讨论】:

    标签: apache


    【解决方案1】:

    由于 Apache 不是以 root 身份运行的(可能是希望如此),它仅具有对目录的读取权限,作为最后一个 o=rx 的一部分。这是一个很好的默认设置,因为这意味着它不能更改目录,只能被动地从中读取和提供文件。因此,在 Apache 进程(例如 mod_php)下运行的所有内容都具有相同的限制。这可以防止许多常见的新手漏洞,例如允许将 .php 文件上传到公共网络文件夹;因为 Apache/PHP 无法写入 web 文件夹。

    您应该将 Apache/PHP/CGI应该 明确能够写入的目录分配给 apache/www-data(取决于您的操作系统/配置)。对/var/www 下的任何目录执行此操作通常不是一个好主意,您应该尽可能将其保留为只读。但是,将特定于应用程序的文件夹添加到 /usr/local/var/<my website> 之类的文件夹中,并具有 Apache 的写入权限,并有选择地对其进行符号链接或 mod_rewriting 操作。

    【讨论】:

    • 非常感谢您的详细解释,说的很清楚。
    【解决方案2】:

    当您的网站需要修改 web 应用文件夹上的方向/文件的权限时,您有 2 个选择:1)chmod 文件夹到 777/666 或 2)将这些文件夹/文件的所有者更改为 apache

    有时,出于安全原因,更改所有者更喜欢chmod

    【讨论】:

      猜你喜欢
      • 2014-08-28
      • 2019-02-23
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 2012-08-03
      • 2012-02-06
      • 2011-07-23
      • 2011-10-29
      相关资源
      最近更新 更多