Configuration avec serveurs NodeJS

Fermé
oupsie - Modifié par oupsie le 2/02/2017 à 21:56
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 - 2 févr. 2017 à 23:42
Bonjour,

J'ai actuellement un problème de DNS que je ne sais résoudre car ma connaissance dans ce domaine est relativement flou.

Mon problème est le suivant:
- J'ai 3 serveurs NodeJS qui tourne actuellement sur un serveur physique:
Exemple ->
-> 1.2.3.4:433 qui est un serveur que je veux atteindre avec "https://xy.greencolor.com"

-> 1.2.3.4:8080 qui est un serveur que je veux atteindre avec "http://xx.bluecolor.com"

-> 1.2.3.4:3000 qui est un serveur que je veux atteindre avec "http://yy.bluecolor.com"

-> Pour mes noms de domaine:
chez 1&1 j'ai configurer mon dns sur xx.greencolor.com vers 1.2.3.4
et chez Amen un dns sur xx.bluecolor.com vers 1.2.3.4 et aussi yy.bluecolor.com vers 1.2.3.4

J'essaye de paramétrer avec nginx mais je ne suis pas sure que ce soit la bonne solution. Mais pour le moment si je fais:
https//xy.nameserver.com ca m'envoi bien sur le bon serveur mais par contre si j'essaye sur du http, http//xy.nameserver.com ca m'envoi sur le serveur en port 8080. Et je ne veux pas.

Dois-je passer par nginx et si oui comment configurer précisement?

Merci d'avance.

4 réponses

barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié par barnabe0057 le 2/02/2017 à 22:19
Bonjour,

Dans le dossier /etc/nginx/sites-available tu dois avoir 3 fichiers (avec l'extension .conf) correspondant au 3 sous-domaines, chaque fichier doit commencer comme ça :

0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié par barnabe0057 le 2/02/2017 à 22:17
Il y a juste à modifier "server_name"

Il faut penser à supprimer le fichier .conf qui s'appelle defaut.
0
J'ai un fichier "default" qui contient ca:

server {
Listen 80;
server_name xx.bluecolor.com;


location / {
proxy_pass proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}


server {
Listen 80;
server_name xy.bluecolor.com;


location / {
proxy_pass proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}

coup, il faut que je décompose? default1, default2, default3 ??
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié par barnabe0057 le 2/02/2017 à 22:25
Oui il faut décomposer, tu fais 3 fichiers :

- xy.conf
- xx.conf
- yy.conf

Une fois les fichiers correctement paramétrés, dans le dossier /etc/nginx/sites-enabled tu crées un lien symbolique pour chaque fichier .conf

Ne pas oublier de supprimer default.conf et de redémarrer nginx.
0
Ok, juste un truc les fichiers de conf je dois les créer dans sites-avaibled ou enabled ? et le lien symbolique je le fais vers quoi?

Et un exemple de xx.conf
server {
Listen 80;
Listen 443;
server_name xx.bluecolor.com;


location / {
proxy_pass 1.2.3.4:443
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
?
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié par barnabe0057 le 2/02/2017 à 22:48
Les fichiers de conf dans /etc/nginx/sites-available

Les liens symboliques dans /etc/nginx/sites-enabled
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié par barnabe0057 le 2/02/2017 à 22:47
Un lien qui pointe vers /etc/nginx/sites-available/xy.conf

Un lien qui pointe vers /etc/nginx/sites-available/xx.conf

Un lien qui pointe vers /etc/nginx/sites-available/yy.conf
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
2 févr. 2017 à 22:56
Il sert à quoi ton proxy_pass ?
0
A rediriger sur mon serveur nodejs. Normalement.
0
C'est bon j'ai réussi :D
Ce fut compliqué mais c'est bon !

ssl.conf :
server {
listen 0.0.0.0:80;
server_name ssl.greencolor.fr greencolor;
access_log /var/log/nginx/green.log;

# pass the request to the node.js server with the correct headers
# and much more can be added, see nginx config options
location / {
rewrite ^(.*) https://ssl.greencolor.fr$1 permanent;
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;

proxy_pass https://1.2.3.4:443/;_ proxy_redirect off;
}
}

nonssl2.conf:
server {
listen 0.0.0.0:80;
server_name nonssl_2.bluecolor.fr bluecolor;
access_log /var/log/nginx/blue2.log;

# pass the request to the node.js server with the correct headers
# and much more can be added, see nginx config options
location / {
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;

proxy_pass https://1.2.3.4:3000/;_ proxy_redirect off;
}
}

nonssl1.conf:
server {
listen 0.0.0.0:80;
server_name nonssl_1.bluecolor.fr bluecolor;
access_log /var/log/nginx/blue1.log;

# pass the request to the node.js server with the correct headers
# and much more can be added, see nginx config options
location / {
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;

proxy_pass https://1.2.3.4:8080/;_ proxy_redirect off;
}
}



Merci encore. Bonne soirée.
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
2 févr. 2017 à 23:42
Oui ça peut être intéressant si quelqu'un a le même problème.
0