OVH Community, votre nouvel espace communautaire.

Configuration sous domaine vers port spécifique : Apache & Node JS


janus57
24/09/2015, 18h50
Bonjour,

- mon-domaine.com utilise le port 80 de mon VPS
- sous-domaine.mon-domaine.com utilise le port 3000 de mon VPS
le port 80 pour un serveur web apache/nginx ?

Si oui sous apache proxypass doit être capable de rediriger sous-domaine.mon-domaine.tld vers le port 30000 (voir la doc de apache).

Cordialement, janus57

sich
24/09/2015, 18h49
Il faudrait tester avec le fichier de config ports.conf par exemple :
NameVirtualHost 80
Listen :80

NameVirtualHost :3000
Listen :3000

Ensuite dans les vhosts :
:80>
DocumentRoot "/var/www/mon-domaine.com"
ServerName mon-domaine.com


:3000>
DocumentRoot "/var/www/sous-domaine.mon-domaine.com"
ServerName sous-domaine.mon-domaine.com


Fonctionne très bien pour des ip différentes sur le port 80, mais ça devrait fonctionner sur la même ip et des ports différents.

jriffard
24/09/2015, 18h41
Concretement, je souhaite que :

- mon-domaine.com utilise le port 80 de mon VPS
- sous-domaine.mon-domaine.com utilise le port 3000 de mon VPS

Il n'y a vraiment aucun moyen de faire ca ?

Sinon, est-il possible de faire en sorte que mon-domaine.com/monApplication soit l'url d'accès à mon-domaine.com:3000 ?

Je vais me pencher du côté de Nginx pour voir comment faire. Merci.

Freemaster
24/09/2015, 18h01
sous apache :

Code:

ServerName sous-domaine.domaine.tld

ProxyRequests Off
ProxyPass / http://127.0.0.1:3000
ProxyPassReverse http://127.0.0.1:3000

bien entendu à activer le mod_proxy

Rizz
24/09/2015, 17h20
Non je vois pas.
Tu veux avoir apache sur le port 80 ?
et tu voudrai en plus ... avoir ton sous domaine sur le port 80 mais celui ci écoute sur 3000.

Bon courage.
A moins d'avoir une IP en plus et de procéder a du nat de port un peu plus précis ... ca me parait mort ... mais je t'en parle sans vraiment savoir j'ai jamais fait de nat.

Tu devrait regarder du coté de NGINX il me semble qu'il a des compétences dans la matiere.

jriffard
24/09/2015, 17h16
Rizz,

Ok je comprend ce que tu veux faire. La où je suis un peu perplexe c'est par rapport au mon sous domaine. Si je fais les commandes que tu viens de me donner, cela veut dire que que dès que je vais acceder à mon-domaine.com je vais être redirigé vers le port 3000. Or je souhaite juste afficher le port 3000 pour sous-domaine.mon-domaine.com.

Vois-tu ce que je veux dire ?

Merci de ton aide !

Rizz
24/09/2015, 16h56
IPTABLES loulou

Tu fais une redirection du port 80 vers 3000 et ca fonctionne.

--iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
--iptables -A INPUT -i eth0 -p tcp --dport 3000 -j ACCEPT
--iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000

jriffard
24/09/2015, 16h50
Bonjour à tous,

Je possède un VPS sous Debian 7. J'ai créé un sous-domaine (Type A) : sous-domaine.mon-domaine.com.

Je fais tourner une appli sous node js qui écoute le port 3000. Lorsque je me rend sur mon-domaine.com:3000 mon appli est accessible.

Je souhaiterai épurer l'url d'accès en faisant en sorte que quand j'accède à sous-domaine.mon-domaine.com cela m'affiche mon appli. J'ai essayer des manipulation du virtualhost ou la création d'un .htaccess mais sans succes...

Quelqu'un peut-il m'aider svp ?

Merci