php 文件权限 600 给我在本地主机上出现空白页

php 文件权限 600 给我在本地主机上出现空白页

当我将文件权限设置为 时644,php 文件可以正常工作。但如果我授予他们权限,600他们就会给我空白页。而且这种情况只发生在本地主机上,在远程主机上,600php 文件的文件权限工作正常。

我的权限规范:

  1. 文件夹权限:755
  2. 文件权限:644
  3. php文件权限:600

我是否遗漏了需要配置的某些内容

注意:只有空白页,没有警告或错误。当我在终端中运行命令时,php something.php它给出了 HTML 输出,没有任何错误。

答案1

600 表示只有文件所有者才有权读取文件。根据我们的描述,这些文件似乎归您的用户所有,而 Apache 运行的任何用户都不是文件的所有者,因此 Apache 无权读取它们。您可能需要找出 Apache 以哪个用户身份运行,以及chown文件属于哪个用户。

答案2

事情是这样的:

  1. localhost 中的文件归普通用户(我)所有,但我不是运行 apache2 服务器的用户。它是www-data
  2. 我无法将权限设置为 600,因为这样 www-data 将没有所需的权限。
  3. 我无法将 www-data 设置为所有者,因为这样我将失去编辑 php 文件的能力。
  4. 剩下的唯一选择是将文件权限设置为 640(其他人有权限,所以我认为它足够安全),并将 www-data 用户添加到我的组或将组所有权设置为 www-data。

我将 www-data 添加到我的组中,并将我的组添加到 www-data,这样就解决了问题,但我必须忍受 640 (所有者:6,组:4,其他:没有任何)。

我听说过利用others权限在脚本中引入坏代码;也许我只是有点偏执。

相关内容