我在 apache2/mod_perl 下设置了多个虚拟主机。我使用 ErrorLog
指令为每个虚拟主机获取单独的错误日志。这仅在我使用 Apache2::Log 时按预期工作。 'warn' 只会记录到常规错误日志。
这样就可以了。最后。但还有一个问题:当我通过 $r->log_error 登录时,我发现换行符被替换为 \n
知道为什么会发生这种情况,以及如何解决?
谢谢。
最佳答案
这不是 mod_perl 问题,而是 Apache 问题。显然,将未转义的输出打印到错误日志存在一些安全问题(我不完全确定为什么),因此在使用此构建/配置 Apache 时必须在 Apache 中明确启用它:
CFLAGS=-DAP_UNSAFE_ERROR_LOG_UNESCAPED ./configure
如果您使用的是已安装的 apache,则您无能为力。
关于perl - 为什么我的 Apache2::Log 输出用\n 替换换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1573912/