web-dev-qa-db-fra.com

Node.js - Comment puis-je supprimer le port de l'url?

J'utilise le node.js et socket.io.

Mon application s'exécute sur le port 3000. L'application démarre à partir de l'url: mydomain.com:3000/

Je veux exécuter l'application depuis mydomain.com - Je veux supprimer le port de l'url.

Où et comment puis-je définir ce paramètre?

34
Jenan

Trouvez votre server.listen appel et changez le port de 3000 En 80. N'oubliez pas que vous devez exécuter le programme avec la capacité CAP_NET_BIND_SERVICE (Voir capabilities(7) pour plus de détails) afin de vous lier aux ports inférieurs à 1024 sur les systèmes Linux. Le privilège root contiendra ce privilège, ainsi que d'autres.

23
sarnold

Si vous voulez l'exécuter "sans port" comme vous le décrivez, vous allez en fait l'exécuter sur le port 80. Vous ne pouvez pas le faire sans les autorisations root.

Donc au lieu de

node server.js

Vous avez besoin

Sudo node server.js

Cela suppose que vous disposez des autorisations Sudo sur la machine sur laquelle vous essayez de l'exécuter. Sinon, vous allez rencontrer des problèmes EACCESS. C'est ce que Sarnold essaie de vous dire.

12
Aashay Desai

C'est comme ça que je l'ai fait car j'utilise aussi Apache, je ne peux pas utiliser le port 80 car il le réserve. J'ai donc configuré une passe proxy. J'ai défini mon dossier/src pour qu'il soit ignoré.

<VirtualHost *:80>
    DocumentRoot "/Library/WebServer/Documents/www.mysite.com"
    ServerName local.www.mysite.com
    ServerAlias local.www.mysite.com
    ProxyPass /src !
    ProxyPass / http://local.www.mysite.com:3000/
    ProxyPassReverse / http://local.www.mysite.com:3000/
</VirtualHost>
8
Anna

Tout d'abord, vous souhaiterez probablement exécuter l'application à partir de votre hôte local, "127.0.0.1". Vous pouvez supprimer le port simplement en l'omettant dans la configuration node.js. Par défaut, les navigateurs Web recherchent des serveurs sur le port 80. Si vous souhaitez que votre serveur s'exécute sur le port 3000 pour une raison quelconque, il devra être inclus dans l'URL.

2
feralcreature