Nginx反向代理Nodejs – log4js日志IP显示错误
发布于 2年前 作者 bsspirit 2702 次浏览

alt Nginx反向代理Nodejs – log4js日志IP显示错误

为提高web应用的吞吐量,我们一般都用nginx做负载均衡器,再反向代理到真正的web服务器。像JAVA服务可以做成Nginx+Tomcat, PHP用Nginx+Spawn-fcgi, 当然nodejs服务,我们也可以做相同的架构Ngnix+Node。

我使用nginx+nodejs+log4js时,发现log4js日志的remote_addr项,总是显示127.0.0.1。本文将重点解释如何通过修改log4js的代码,解决这个问题。

我已经提交这个问题到log4js-node的issue https://github.com/nomiddlename/log4js-node/issues/139

文章目录:

配置nginx反向代理 log4js做为web日志输出 log4js日志ip显示错误及修复

请查看博客文章
http://blog.fens.me/nodejs-nginx-log4js/

4 回复

Nginx 反向代理配置,设置header的时候是不是没有指定$remote_addr

指定了。估计是log4js框架,还没有考虑到的feature。

自己改一下就OK了。

log4js 在 connect 中使用时, 提供了对外的扩展.

可以自己指定 format 函数. 即 option.format 指向 function.

如果 format 是 function(而不是 string )时, log4js 会使用自定义的 function 生成 string 来记录.

多谢指点,我去试一下。

回到顶部