我对所有这些服务器/ ngInx的东西都很陌生,所以我遇到了一个问题,即填写请求的正确IP地址。截至目前,所有请求都来自IP地址127.0.0.1(在AWS内部)。但是,我需要能够验证请求的原始IP地址是什么。
正如我读过here,我需要在ngInx中指定以下选项:
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
但是,我不在AWS上使用nginx的自定义配置。有没有办法只将这两行添加到aws的默认配置nginx上?
答案 0 :(得分:1)
我不是nginx的专家,但你可以使用ebextensions(http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html)来解决这个问题。
基本上,您首先需要将此新配置放在nginx配置文件中,如下所示:
files:
"/etc/nginx/conf.d/proxy.conf" :
mode: "000755"
owner: root
group: root
content: |
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
然后你还需要使用如下所示的container_commands重新加载nginx:
container_commands:
01_reload_nginx:
command: "service nginx reload"
希望它有所帮助!