php - 无法使用 PHP 在 Linux 中写入日志文件

标签 php linux logging ejabberd chmod

我在用于 ejabberd XMPP 服务器的 Google Compute Engine 实例上运行 CentOS 6.5。我还安装了 php 5,ejabberd 配置为使用 php script对用户进行身份验证。 到目前为止一切顺利 - ejabberd 执行脚本并从中接收到正确的结果。问题是:我想让 PHP 脚本写一个日志文件。到目前为止,我已经尝试过:

  • 使用 file_put_contents 将文件写入/var/log/mlog.log - 这没有用。所以我尝试手动创建文件并给它 chmod 777 (用于测试)。没有结果 - 文件仍然是空的。但是 - 当我从终端使用 php 手动执行脚本时,日志被写入。
  • 写入 syslog - 我已将 php.ini 配置为使用 syslog,然后尝试进行日志记录。同样的结果:当 ejabberd 运行脚本时什么也没有,但是当我手动运行它时它起作用了。
  • 配置 error_log 文件并使用 error_log($message)。同样,它没有用。

我开始意识到 ejabberd 用户(运行 php 脚本)的写入权限一定有问题,但即使我将 chmod 777 设置为上述每个选项中的每个文件,日志仍然是空的。

有什么提示吗?我错过了什么? (你可能会说,我对 Linux 了解不多,这是我第一次在项目中使用它)

最佳答案

这可能不是您要寻找的答案。我对 Linux 不是很熟悉。有一个名为 KLogger 的 KeyLogging php 类.您可以使用此类创建日志。很容易use , 你必须下载 php 文件并使用它。您可以在 github 中找到它.希望这可以解决您的问题。

关于php - 无法使用 PHP 在 Linux 中写入日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26272756/

相关文章:

javascript - 我有以下代码来刷新 div,而不是整个 html 页面

linux - 为什么 atime 不保存在 tar 中?

python - python 记录器中的序言和尾声

接口(interface)中的 Java "Cache"SLF4J 记录器

java - 以编程方式将 Logback 设置为记录到 gzip 文件

php - 嵌套三元运算符的优先顺序

php - USING if 语句不能正常工作

javascript - Html 编码 Ionic 2 + API PHP 引用错误

php - 如何在 Linux 服务器上创建类似 Facebook 的体验

C#(单声道): Restarting process on program failure