我在 Linux Fedora 17 上使用 Apache 服务器。我有一个 PHP 代码,它创建一个 .ini 文件。如果我通过 Apache Web 服务器运行 PHP 代码来创建 .ini 文件,则其余 PHP 代码文件能够读取 .ini 文件数据,因为其所有者是 Apache。但是,如果我从 Linux 终端运行 PHP 代码并生成该 .ini 文件,则其余 PHP 代码文件将无法读取文件数据,因为所有者是 root。我尝试从终端将 .ini 文件的组和文件所有者从 root 更改为 Apache,但它仍然不起作用。
答案1
您正在以“root”用户身份运行 php 脚本,这就是使用 root 所有权创建 .ini 文件的原因。
即使该文件是以“root”作为其所有者创建的,其他“php 代码文件”也应该能够读取它,因为它很可能具有“其他人”的读取权限。因此,在这里,您需要检查创建 .ini 文件的目录的权限。