我正在寻找一种解决scheme,使Apache日志文件可以以合理的方式和实时共享主机。 我在Debian上运行Apache 2.2,并且configuration了Apache,为每个虚拟主机在一个公共目录(即/ var / log / apache2)中保留单独的访问日志和错误日志,日志文件由root.adm拥有,并拥有640的权限。
现在我有一个hacky的解决scheme,它使用小时的cronjob将所有虚拟主机的日志文件复制到另一个只读给用户的定制CGI脚本运行的目录。 然后,这个CGI脚本将一个经过身份validation的用户与他/她拥有的虚拟主机相匹配,并提供这些虚拟主机的日志文件供下载。 这是不好的,因为我需要保留一个单独的表,以便将经过身份validation的用户与其虚拟主机相匹配,并且日志只会每隔一小时更新一次。
将日志写入进程,并让该进程根据需要分割日志文件。
请参阅Apache文档以获取“ pipe道日志 ”。
如果您已经有单独的日志,为什么不把它们粘在用户主文件夹? 你显然不希望他们在用户网站的根,但他们的家庭文件夹不应该在网上访问,所以应该没问题。 还是我错过了什么?
巴特。
我很确定,syslog-ng可以做到你想要的。 它支持分割输出并将所有权分配给结果文件。 所有这些都可以在接近实时的情况下完成。