小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

無法從Java中的Nginx反向代理獲取遠(yuǎn)程IP

 印度阿三17 2019-10-29

目前,我正面臨Nginx和playframework的問題.我已經(jīng)在play應(yīng)用程序前面將nginx配置為反向代理.

當(dāng)我嘗試在Java中(在Play框架中)讀取客戶端ip時(shí),有時(shí)我可以獲得正確的ip,但是有時(shí)我會(huì)收到“ 0:0:0:0:0:0:0:0:1”,甚至?xí)玫蕉鄠€(gè)ip地址類似于“ 222.72.xxx.xxx,10.210.44.35、115.239.xxx.x”.

似乎有時(shí)它可以工作,但經(jīng)常出錯(cuò).

這是我的nginx.conf配置:

http {
    ##
    # Basic Settings
    ##

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Scheme  $scheme;
    proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_set_header Host  $http_host;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    # server_tokens off;

    # server_names_hash_bucket_size 64;
    # server_name_in_redirect off;

    upstream webapp {
            server localhost:9000;
            server localhost:9002;
    }

    server {
      listen       80;
      listen       [::]:80;
      server_name  ;
      return       301 http://www.$request_uri;
    }

    server {
      listen       80;
      listen       [::]:80;
      server_name  www.;

      location /assets/ {
        root      /home/myuser/apps;
      }

      location /static/ {
        expires   30d;
        root      /home/myuser/apps;
      }

      location / {
        proxy_pass  http://webapp;
      }
      location /apis/ {
        proxy_pass  http://localhost:9001;
      }
    }
...
}

這是我從Nginx的access.log中提取的一些日志,以及我的Java應(yīng)用程序中的日志:
access.log:

115.239.xxx.x - - [20/Aug/2014:22:30:29  0200] "GET /news/article/53f00d5efeb89844977b5477 HTTP/1.1" 499 0 "http://www./news/article/53f00d5efeb89844977b5477" "Mozilla/5.0 (iphone; U; CPU iPhone OS 4_3_5 like Mac OS X; en-US) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5”

Java應(yīng)用程序日志:

2014-08-20 22:30:29,621 INFO  application - Activity  - IP: 222.72.xxx.xxx, 10.210.44.35, 115.239.xxx.x, URL: /news/article/53f00d5efeb89844977b5477, UserAgent: Mozilla/5.0 (iphone; U; CPU iPhone OS 4_3_5 like Mac OS X; en-US) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5

順便說一句,服務(wù)器還支持IPV6,這就是為什么我在nginx.conf中添加了IPv6支持的原因.

誰能幫我嗎?

非常感謝!

干杯,

馬丁

解決方法:

Play中有一個(gè)配置選項(xiàng),用于控制是否信任Nginx發(fā)送的X-Forwarded-For標(biāo)頭.您需要添加

trustxforwarded=true

到您的application.conf.你做完了嗎?

在文檔中“高級(jí)代理設(shè)置”標(biāo)題下:https://www./documentation/2.3.x/HTTPServer

來源:https://www./content-3-532301.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多