在httpd中转发请求时如何获得真实IP(不是127.0.0.1)显示为远程IP

我有一个坐在tomcat前面的httpd服务器。 两个服务都在同一台机器上运行。

该机器有2个IP地址,我有域名绑定到不同的IP地址。

在tomcat的访问日志中,所有远程IP地址都显示为127.0.0.1。 我认为这是因为所有的tomcat知道的是,请求源自一个客户端标识自己与IP 127.0.0.1,这个客户端实际上是Apache。

有没有办法让Apache用自己的域名绑定的IP来标识自己?

编辑:一个稍长的故事…

我实际上想要做的是确定请求是来自我们的内部networking还是来自互联网。 我们有2个主机名parsing为2个不同的IP地址。 其中一个地址可以从互联网上看到,其中一个不是。 我的希望是,我可以确定用户实际input到浏览器的IP / URL,并使用它来禁用某些我们不想从Intranet外部访问的function。

干杯,彼得

Tomcat需要支持X-Forwarded-For头(Apache使用rpaf模块),而httpd(我想是Apache)需要为你设置头。

顺便说一句,如果使用代理,是不是更好使用Nginx?