Comment exécuter meteor sur un autre port, par exemple sur le port 80. J'ai essayé d'utiliser meteor --port 80
, mais le message d'erreur Error: listen EACCES
s'affiche.
aidez-moi s'il vous plaît.
On dirait que cela pourrait être un problème d'accès sur votre machine.
Découvrez cette réponse suivante, qui pourrait être liée à votre question. Citant:
"En règle générale, les processus exécutés sans privilèges root ne peuvent pas être liés à des ports inférieurs à 1024.
Essayez donc un port supérieur ou exécutez-le avec des privilèges élevés via Sudo
. "
Ainsi, vous pouvez voir que Sudo meteor run
avec votre numéro de port fonctionnera, mais que vous pouvez vous attaquer à la cause première, à savoir la correction du privilège racine du nœud.
Erreur Node.js EACCES lors de l'écoute sur la plupart des ports
Vous ne pouvez pas vous lier aux ports <1024 sur les systèmes d'exploitation Linux/Unix avec un compte non privilégié.
Vous pourriez contourner cela en exécutant météore en tant que root, mais c'est une très mauvaise idée. En mode de développement, une exécution en tant que root modifiera les autorisations des fichiers du répertoire de votre application. En production, c'est juste un trou de sécurité géant. Ne jamais exécuter une application de météore en tant que root .
La liste ci-dessous répertorie les meilleures pratiques en fonction de votre environnement.
Exécuter météore sur un numéro de port élevé. La valeur par défaut est 3 000 lorsque vous ne spécifiez pas d'argument --port
. Connectez-vous à celui-ci via l'URL imprimée dans la console - par exemple. http://localhost:3000/
.
Ici vous avez deux choix:
Exécutez météore sur un numéro de port élevé et connectez-le au monde extérieur via un proxy inverse tel que nginx ou HAProxy .
Démarrer le serveur Web en tant que root, mais retirez les autorisations une fois qu'il est exécuté en utilisant quelque chose comme userdown . Voici comment mup qui, incidemment, est probablement ce que vous devriez utiliser pour déployer votre application.
lancez-le avec Sudo
Sudo meteor --port 80
Vous pouvez utiliser meteor run --port 8080
, c'est du travail ...