Nginx代理到后端允许不起作用但拒绝工作

时间:2017-02-03 06:13:16

标签: apache nginx

我的目标是通过nginx将我的subdomain.domain.com代理到apache上的后端web.domain.domain.com。 proxy_pass在nginx中工作,那部分是好的

server {
listen 80;
server_name subdomain.domain.com;
location / {
 proxy_pass http://web.domain.domain.com;        
}}

通过这种方式,我通过subdomain.domain.com将web.domain.domain.com带到了世界 但我不知道每个人都可以访问它所以我知道nginx支持允许拒绝。当我添加allow externalip并拒绝所有代码时:

    server {
        listen 80;
        server_name subdomain.domain.com;
        location / {
allow xx.xx.xx.xx;
deny all;         
proxy_pass http://web.domain.domain.com;        
        }}

它应该允许ip到达subdomain.domain.com并拒绝世界其他地方,但它不起作用它拒绝所有这就是它 我有很多帖子,但没有找到解决这个问题的方法 我使用的是nginx 1.6版本

1 个答案:

答案 0 :(得分:0)

问题是我没有获得到达我的域的用户的真实IP,所以答案是我需要从我的HA代理发送真正的IP

    set_real_ip_from  10.x.x.x;
    real_ip_header    X-Forwarded-For;
    real_ip_recursive on;