1. ホーム
  2. javascript

[解決済み] Node.jsのwebsocketエラー "Error: listen EADDRNOTAVAIL Error: listen EADDRNOTAVAIL"

2022-02-24 13:01:31

質問

アプリケーションはローカルホストでは正常に動作していますが、サーバーに接続するとエラーが発生します。
22番ポートでサーバーに接続しています。

これはエラーです

Error: listen EADDRNOTAVAIL Error: listen EADDRNOTAVAIL
at errnoException (net.js:904:11)
at Server._listen2 (net.js:1023:19)
at listen (net.js:1064:10)
at net.js:1146:9
at dns.js:72:18
at process._tickCallback (node.js:419:13)
at Function.Module.runMain (module.js:499:11)
at startup (node.js:119:16)
at node.js:906:3

ヘルプ!

-アップデイト

実行 netstat -tulpn | grep 22

結果

 tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      683/sshd
 tcp6       0      0 :::22                   :::*                    LISTEN      683/sshd

を実行したのですが netstat -tulpn | grep 80

何も表示されません。

これはサーバーの故障ですか?

実行中 netstat -nlt

     Active Internet connections (only servers)
     Proto Recv-Q Send-Q Local Address           Foreign Address         State
     tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN
     tcp        0      0 127.0.0.1:5901          0.0.0.0:*               LISTEN
     tcp        0      0 127.0.0.1:5902          0.0.0.0:*               LISTEN
     tcp        0      0 0.0.0.0:6001            0.0.0.0:*               LISTEN
     tcp        0      0 0.0.0.0:6002            0.0.0.0:*               LISTEN
     tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
     tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN
     tcp6       0      0 :::22                   :::*                    LISTEN
     tcp6       0      0 ::1:631                 :::*                    LISTEN

実行中 netstat -anp | grep :80

     tcp        1      0 162.243.145.226:60728   91.189.94.25:80         CLOSE_WAIT  1726/ubuntu-geoip-p
     tcp        1      0 162.243.145.226:47842   74.125.239.148:80       CLOSE_WAIT  8104/epiphany-brows
     tcp        1      0 162.243.145.226:60727   91.189.94.25:80         CLOSE_WAIT  1417/ubuntu-geoip-p
     tcp        1      0 162.243.145.226:58818   198.41.30.199:80        CLOSE_WAIT  8104/epiphany-brows

解決方法は?

使用されているポートを使用している。ポートを変更するか、そのポートをリッスンしているプロセスを停止させる必要があります。ターミナルを開いて、次のように記述してください(例)。 lsof -i :22 または lsof -i :80 または lsof -i :8000kill PID プロセスの


リスニングを変更する方法 ポート をtotal.jsに追加してください。

  1. /app/config または /app/config-release または /app/config-debug :
default-ip       : 127.0.0.1
default-port     : 8000

または

// For e.g. Heroku
default-ip       : auto
default-port     : auto

  1. ファイルが存在する場合 release.js または デバッグ.js :
var fs = require("fs");
var options = {};

// options.ip = "127.0.0.1";
// options.port = parseInt(process.argv[2]);
options.port = 8000;

  1. が存在する場合のみ index.js
// for development:
require('total.js').http('debug', { port: 8000 });

// or for production:
require('total.js').http('release', { port: 8000 });

お礼とドキュメント http://docs.totaljs.com