【问题标题】:How can I get the real client ip on dotcloud?如何在 dotcloud 上获取真实的客户端 IP?
【发布时间】:2012-08-04 00:51:32
【问题描述】:

我在 dotcloud 上为我的网站使用 dancer perl。我知道问题是 nginx 的设置。但是我尝试像这样添加nginx.conf

location / { 
proxy_pass http://127.0.0.1:80; 
proxy_set_header Host $host; 
proxy_set_header X-Real-IP $remote_addr; 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
} 

并返回 505; 无论如何,在我的代码中 remote_address 总是返回 10.*.*.*
你能帮我解决这个问题吗?

【问题讨论】:

    标签: perl dotcloud dancer


    【解决方案1】:

    我找到了解决办法:

    my $user_ip = request->env->{'HTTP_X_REAL_IP'};
    $user_ip =~ s/^::ffff:(.*)/$1/g;
    

    【讨论】:

      【解决方案2】:

      您可以考虑使用Plack::Middleware::ReverseProxy

      【讨论】:

        猜你喜欢
        • 2013-08-18
        • 2020-05-22
        • 1970-01-01
        • 2012-07-22
        • 1970-01-01
        • 2013-04-16
        • 1970-01-01
        • 2021-06-16
        • 1970-01-01
        相关资源
        最近更新 更多