[Résolu] Pourquoi nginx en amont ne transmet-il pas l'adresse IP du navigateur ?
阿神
阿神 2017-05-16 17:13:22
0
2
788

Résolu le besoin d'ajouter ces phrases sous le serveur

            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $host;
            proxy_redirect off;

Pourquoi nginx en amont ne transmet-il pas l'adresse IP du navigateur, mais l'adresse du serveur nginx ?

Ma configuration de transfert nginx est la suivante :

upstream mysite.com{
      server 10.24.240.132:8080;
      server 10.24.155.103:8080;
      ip_hash;
}

server
{
    listen       443;
    server_name  mysite.com;

    ssl on;
    ssl_certificate /etc/ssl/crt/server.cer;
    ssl_certificate_key /etc/ssl/crt/server.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 SSLv2 SSLv3;

    ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";

    ssl_prefer_server_ciphers on;

    location / {
            proxy_pass http://mysite.com;
        }
}

La configuration réelle du serveur transmise est la suivante :

    location ~ .*\.php.*
    {
        fastcgi_param HTTPS on;

        include php_fcgi.conf;
        include pathinfo.conf;
    }

Mais le problème est que chaque fois que je visite le site Web, la valeur de $_SERVER['REMOTE_ADDR'] en php est l'adresse du serveur nginx de transfert 10.24.240.132 (le serveur de transfert écoute le port 80, l'adresse est 10.24.240.132, et les deux serveurs php écoutent le port 8080, le serveur de transfert fait également office de serveur php), au lieu de l'adresse du navigateur :

 "REMOTE_ADDR" => "10.24.240.132"
  "REMOTE_PORT" => "6324"
  "SERVER_ADDR" => "10.24.240.132"
  "SERVER_PORT" => "8080"
  "SERVER_NAME" => "10.24.240.132"
阿神
阿神

闭关修行中......

répondre à tous(2)
Ty80
location / {
        proxy_pass   http://http://mysite.com;
        proxy_redirect off;
        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_set_header X-NginX-Proxy true;
}
为情所困

Parce que vous ne l'avez pas configuré

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal