1
我正在管道apache日志到php文件,以便将后来的日志写入数据库。PHP STDIN没有从管道apache日志中获取内容
在虚拟主机我也行:
ErrorLog "|/usr/bin/php /opt/waffy/log2db.php"
在PHP我有:
$stdin = fopen ('php://stdin', 'r');
ob_implicit_flush (true); // Use unbuffered output
$data = "";
while ($line = fgets ($stdin))
{
$data .= $line;
}
file_put_contents("/opt/waffy/log.log",$data);
PHP的调用,但该文件/opt/waffy/log.log
是空的。
UPDATE1
我想我有一点进步时,我做了 chmod +X log2db.php
什么hapend,但是当我更换X
与x
我停下来获得ERR_CONNECTION_REFUSED
。
但不创建文件/opt/waffy/log.log
...
把这个'错误日志启动Apache“| /opt/waffy/log2db.php> > /opt/waffy/out.log“ '在我的虚拟主机中,当访问页面时导致'ERR_CONNECTION_REFUSED',前夕ñ虽然'configtest'确定了....谢谢。我认为每次'>>'都在我的虚拟主机中... – SexyMF
@SexyMF我测试过它对我来说工作正常。你改变了你的脚本并添加了#!/ usr/bin/php这行,并且看到了正确的权限 – Kordi
是的,除了我的php在#!/ usr/bin/php5(ubuntu) – SexyMF