【发布时间】:2016-03-03 09:19:11
【问题描述】:
我在 Apache Web 服务器上使用 PHP,但 PHP 缺乏写入权限,无法创建新文件或修改现有文件,尽管需要修改的文件设置为通常的 644(和文件夹是 755)。
我的第一个猜测是问题在于 PHP 以与文件所有者不同的用户身份运行,并且运行“posix_getpwuid(posix_geteuid());”我发现 PHP 作为“www-data”运行,而文件的所有者和组设置为“company123”。所以也许我应该简单地将文件的所有者更改为“www-data”?
但后来我决定检查我一直在使用的其他一些 Web 服务器。在我尝试的第一个中,我使用 PHP 创建或修改 644 个文件没有问题,然而,所有者和组被命名为“600”,而 PHP 以用户“wse253421”运行。显然,PHP 可以作为一个用户运行,并写入另一个用户拥有的 644 个文件。它是如何工作的?
这是怎么回事,PHP在第一台服务器上没有写权限该怎么办?
【问题讨论】:
-
您也可以创建一个文件夹并允许“写入”该文件夹权限,如果没有,请在google n中输入权限文件php您会找到答案
-
我已经花了几个小时在网上搜索答案。 “允许'写入'文件夹权限”是什么意思?该文件夹已经具有通常的 755 权限。我需要更改的文件有 644 权限,但将其更改为 664 没有任何区别。从我所见,权限与其他服务器上的权限相同,运行良好。那么你建议我改变什么?
标签: php apache permissions