为啥 Apache + PHP 需要执行权限才能写入文件?
Posted
技术标签:
【中文标题】为啥 Apache + PHP 需要执行权限才能写入文件?【英文标题】:Why does Apache + PHP require execution permissions to write to a file?为什么 Apache + PHP 需要执行权限才能写入文件? 【发布时间】:2012-07-01 05:51:30 【问题描述】:一直让我感到困惑的是,如果一个文件夹具有读写权限,Apache + php 就无法对其进行写入。您必须结束授予 apache 执行权限才能在该文件夹中写入文件。为什么?
例如使用 chmod 664(其中构建组包括 apache 用户)apache 将无法在此文件夹中写入临时缓存文件:
drw-rw-r-- 5 jenkins build 4096 Jun 15 13:05 cache
使用 chmod 774 apache 将能够将新文件写入文件夹:
drwxrwxr-- 5 jenkins build 4096 Jun 29 11:44 cache
【问题讨论】:
【参考方案1】:您需要执行权限才能从概念上进入一个目录(cd 进入其中,列出其中的文件等)。如果他们将这个位称为目录的其他名称会更清楚。 article 建议将其视为目录的“搜索”权限。
【讨论】:
【参考方案2】:当为目录设置这些权限时,它可以访问元信息和访问内容,我认为这就是您需要执行的原因。
【讨论】:
以上是关于为啥 Apache + PHP 需要执行权限才能写入文件?的主要内容,如果未能解决你的问题,请参考以下文章