如何取得nginx做反向代理时的真实IP

2025-03-11 01:06:53
推荐回答(1个)
回答1:

测试程序代码(后续测试基于它):
// g++ -g -o hello.cgi hello.cpp
#include
#include
int main()
{
printf("Content-Type: text/html; charset=utf-8\r\n\r\n");
printf("

HTTP_X_FORWARDED_FOR: %s\n", getenv("HTTP_X_FORWARDED_FOR"));
printf("

HTTP_X_REAL_IP: %s\n", getenv("HTTP_X_REAL_IP"));
printf("

REMOTE_ADDR: %s\n", getenv("REMOTE_ADDR"));
printf("

");
return 0;
}

测试是在nginx自带配置文件nginx.conf上进行的修改:
proxy_set_header可以添加在nginx.conf的http段,也可以是server段,还可以是location段,一级一级间是继承和覆盖关系。