微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在HTTPS Nginx中访问用户IP

如何解决如何在HTTPS Nginx中访问用户IP

当前,通过HTTP访问我的网站时,客户端IP位于X-Forwarded-For标头中 格式为“ 192.132.41.2,192.168.0.4”

但是,当通过HTTPS访问站点时,只有服务器IP通过。 我如何通过HTTPS保留用户IP?

server {
        #listen 443 ssl http2;
        listen 443;
        ssl on;
        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
        include snippets/acme;
        server_name example.com;
        location / {
                include  /etc/Nginx/mime.types;
                proxy_set_header  X-Real-IP         $remote_addr;
                #proxy_set_header  X-Forwarded-For   $proxy_add_x_forwarded_for;
                proxy_set_header Host $http_host;
                proxy_pass http://localhost:3000;
        }
}

server {
        listen 80;
        include snippets/acme;
       # prevent direct IP access
       if ($host != "example.com") {
               return 404;
       }
        server_name example.com;

        location / {
                include  /etc/Nginx/mime.types;
                proxy_set_header  X-Real-IP         $remote_addr;
                #proxy_set_header  X-Forwarded-For   $proxy_add_x_forwarded_for;
                proxy_set_header Host $http_host;
                proxy_pass http://localhost:3000;
        }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。