3 votes

nginx redirige l'ip vers le nom de domaine

J'essaie de déployer un site web avec nginx et gunicorn. Nginx sert des fichiers statiques et agit comme un proxy pour gunicorn.

Voici le contenu de mon fichier /etc/nginx/sites-available/herbop

server {
       listen 80;
       server_name herbop.com;

       location / {
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header Host $http_host;
                proxy_intercept_errors on;
                proxy_pass http://127.0.0.1:8001;
       }

       location /static/ {
                autoindex on;
                alias /opt/Herbop-Backend/app/static/;
       }
}

server {
       listen 80;
       server_name 51.254.123.234;
       return 301 $scheme://herbop.com$request_uri;
}

Dans ce cas, je semble obtenir une boucle de redirection infinie.

Une idée ?

4voto

gxx Points 5443
  • DNS : Point herbop.com en utilisant un A à l'enregistrement 51.254.123.234 . (Supprimez la redirection http existante.) (Note : le DNS est distribué, il faut parfois un certain temps pour qu'il se propage.)

  • Essayez la configuration nginx suivante :

    server {
        listen 80;
        server_name herbop.com;
    
        location /static/ {
            root /opt/Herbop-Backend/app;
        }
    
        location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header Host $http_host;
            proxy_intercept_errors on;
            proxy_pass http://127.0.0.1:8001;
        }
    }
    
    server {
        listen 80;
        server_name 51.254.123.234;
        return 301 $scheme://herbop.com$request_uri;
    }
    • Notes :

      • ((Si tout ce que vous voulez faire est de servir des fichiers statiques aux visiteurs, comme des images etc., qui sont incorporés dans votre *.html, vous n'avez pas besoin de autoindex . " Le ngx_http_autoindex_module traite les requêtes se terminant par le caractère slash ('/') et produit une liste de répertoires. [...]" Pour autant que je sache, vous n'en aurez pas besoin, donc ne l'activez pas.)) ((Je ne suis pas sûr d'avoir bien compris, et de quel type sont vos fichiers statiques.))
      • En ce qui concerne votre alias directive : Selon la docs : " Lorsque l'emplacement correspond à la dernière partie de la valeur de la directive :

        location /images/ {
             alias /data/w3/images/;
        }

        il est préférable d'utiliser le racine à la place" :

        location /images/ {
             root /data/w3;
        }

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X