在通过mod_fcgid运行Apache和PHP的服务器上,我希望将PHP处理的所有请求记录到一个单独的文件中,这样我就可以更好地了解哪些请求是通过PHP而不是直接通过文件系统处理的。
这是一个在.htaccess中有一些非常复杂的重写规则的站点(使用W3全缓存的Wordpress),它通过mod_rewrite将缓存的PHP请求转换为静态文件请求,这样缓存的请求甚至不会触及PHP子系统。
因此,我希望确保任何日志定制都不会被mod_rewrite魔法所抛弃。例如,仅仅因为请求URI以.php结尾,并不意味着请求最终将由PHP处理。在应用了所有重写规则之后,我需要根据发生的任何事情进行键击。
发布于 2012-02-14 03:53:15
要做到这一点,似乎最直接、最愚蠢的方法是将日志代码包括在每个PHP页面中,可能是在调用flush()以发送页面输出、写入日志文件之后,或者如果设置锁定并从日志写入文件太昂贵,请将一些东西发送到zeromq (它有一个php库,我相信示例代码中)或某种等待服务器,让该服务器接受、断开连接,然后锁定/写入日志。这样,如果从PHP调用它,它只会准确地记录PHP运行的内容。
https://serverfault.com/questions/359831
复制相似问题