質問: vagrantでnode.jsにアクセスするvm vagrantを使用してosxでホストされているcentos vmを使用していますが、ゲストcentosマシンで実行されているnode.jsに接続できないようです。nginxとnode.jsの両方をインストールし、両方のポートをホストからゲストに転送しました。config.vm.network :forwarded_port, guest: 8080, host: 8080 config.vm.network :forwarded_port, guest: 8124, host: 8124 node.jsを起動した後、「wget 127.0.0.1:8124」によって仮想マシン内でローカルにアクセスできますが、機能しないホストマシンからアクセスできます。ホストマシンからポート8080のnginxインスタンスに問題なくアクセスできます。 node.jsをポート8124で実行することを計画していますが、nginxを停止してから、ポート8080(centos vmに確実に転送されている)でnode.jsを実行しても機能しません。iptablesサービスを停止したので、リクエストがブロックされるとは思わないでください。centosゲストvmで実行されているときにnode.jsがホストマシンからの要求を受け入れるようにするには、何をする必要がありますか?私が実行しているnodeスクリプトは https://github.com/guzzle/guzzle/blob/master/tests/guzzle/tests/http/server.js =ただし、リクエストがノードサーバーに到達しているため、これは関係ないと思います。
回答: https://github.com/guzzle/guzzle/blob/master/tests/guzzle/tests/http/server.js#l132 132行目を参照してください。アプリはループバックインターフェイスのみにバインドされています。簡単なnetstatで確認できます。$ sudo netstat -ltpn | grep 8124 proto recv-q send-q local address foreign address state pid/program name tcp 0 0 0.0.0.0:8142 0.0.0.0:* listen node 上記のコマンドからの出力は、127.0.0.1ではなく0.0.0.0にバインドされたポート8142のノードプロセスを示しているはずです。