Como obter IP real (não 127.0.0.1) para aparecer como IP remoto ao encaminhar solicitações no httpd

1

Eu tenho um servidor httpd na frente do tomcat. Ambos os serviços estão sendo executados na mesma máquina.

A máquina tem 2 endereços IP e eu tenho nomes de domínio vinculados a IPs diferentes.

Nos logs de acesso para o tomcat, todos os endereços IP remotos mostram 127.0.0.1. Acho que isso é porque todo o tomcat sabe que a requisição é originada de um cliente identificando-se com o IP 127.0.0.1 e que esse cliente é realmente o Apache.

Existe alguma maneira de fazer com que o Apache se identifique com o IP real ao qual o nome de domínio está vinculado?

EDIT: Uma história um pouco mais longa ...

O que estou realmente tentando fazer é determinar se as solicitações estão vindo da nossa rede interna ou da Internet. Temos 2 nomes de host que resolvem dois endereços IP diferentes. Um desses endereços é visível da internet e um não é. Minha esperança era que eu pudesse determinar qual IP / URL o usuário realmente digitou em seu navegador e usá-lo para desativar certos recursos que não queremos que sejam acessados de fora da intranet.

Felicidades, Peter

    
por Peter Wilkinson 20.11.2013 / 10:22

1 resposta

1

O Tomcat precisa suportar o cabeçalho X-Forwarded-For (o Apache faz isso com o módulo rpaf), e o httpd (Apache, eu acho) precisa definir esse cabeçalho para você.

BTW, se você usar um proxy, não é melhor usar o Nginx?

    
por 20.11.2013 / 11:30

Tags