2017-06-01 4 views
0

ノードプロジェクトはローカルホスト上で完全に正常に実行されますが、ドメイン上では実行できません。これを解決するために手伝ってください。私はウェブ上で実行したとき、私はそれがメッセージを印刷し、端末上のノードserver.jsを実行したときにノードプロジェクトをLinuxサーバーにセットアップする方法は?

app.listen(3000,'APP_PRIVATE_IP_ADDRESS' function(err,rslt){ 
    if(err){ 
     console.log(err); 
    } 
    else{ 
    console.log("App Started on PORT 3000"); 
} 
}) 

「アプリケーションがポート3000での開始」が、それは誤りサイトに到達することはできませんを示しています。

+2

[Node.jsの接続はローカルホスト上でのみ動作します](https://stackoverflow.com/questions/14043926/node-js-connect-only-works-on-localhost) –

+1

Uh - おそらくサイトにアクセスできませんか? Q:そのアドレスにpingできますか?質問:あなたのPCとノードアプリケーションの間に、そのエンドポイント( "エンドポイント" == IPアドレス+ポート)をブロックしているルータまたはファイアウォールがありますか? "0.0.0.0"へのバインディングはソリューションの一部ですが、必ずしも全ソリューションである必要はありません。( – paulsm4

+0

あなたはパブリックIPまたはドメイン名でアクセスしていますか?ドメイン名を使用してAレコードをサーバーIPにマップしましたか? –

答えて

0

「0.0.0.0」という記号IPを使用すると、すべてのIPまたは任意のIPをバインドすることを意味します。

app.listen(3000, '0.0.0.0', function(err, rslt){ 
    if(err){ 
     console.log(err); 
    } 
    else{ 
     console.log("App Started on PORT 3000"); 
    } 
}); 

ホスト名はオプションなので、これは等価です:あなたはIPのバージョンを指定したいという場合には

app.listen(3000, function(err, rslt){ 
    if(err){ 
     console.log(err); 
    } 
    else{ 
     console.log("App Started on PORT 3000"); 
    } 
}); 

、この2つの使用は違いを作ります。 hostnameパラメータに '0.0.0.0'という値を指定すると、IPv4バインディングだけが実行され、IPv4要求のみが受け入れられて聴かれます。このパラメータを指定しないと、IPv6とIPv4の両方のバインドが行われます。

+0

ローカルサーバーでは動作しますが、ライブサーバーでは動作しません – tanu

+0

環境には他に問題がある可能性があります。 –

関連する問題