私は自宅のコンピュータにポート80で動作するApache Webサーバーをセットアップすることができました。私のパブリックドメインが私のApache HTDOCsファイルに私を連れて行くように私のフォワードパスが設定されています。明らかにするために、私は自分のWebサーバーをホストすることができたので、自分のWebサイトをホストすることができます。私は正常にHTMLコンテンツを表示することができます。Apacheで自分のノードサーバーをホストしていますか?
ここでNodeJSをこの機能に追加したいと思いますが、やや混乱しています。
:今、私はこの行を置くために私のhttpd
ファイル、で、どこにほとんど混乱しています
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
:
はanswer on this link後、私は私のhttpd
ファイルに以下の行のコメントを解除することを確認しました
ProxyPass /node http://localhost:8000/
これは、私が外部からnodejにアクセスできるかどうかはわかりません。
さらに、私の場合、ApacheフォルダにNodeJSをインストールすることになっているのではないかと思います。私の場合はc:/Apache24
です。もしそうなら、私はどのディレクトリにそれをインストールしますか?
追加するには、テストノードファイル(nod.jsという名前)に次のコードが含まれています。
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello Apache!\n');
}).listen(8000);
私はこれをhtdocsでnode nod
経由で実行します。これはlocalhostで動作しますが、私の外部IPでは表示されません。
EDIT:私は何を私の球場内のを想定しているが、
<VirtualHost *:80>
ProxyPass /node http://localhost:8000/ connectiontimeout=5 timeout=30 # optional timeout settings
</VirtualHost>
これは動作しません:this exampleから私はそうのようなもの、私は仮想ホスト内の私はProxyPassをラップする必要があることを信じていますやっているよ。
で使用しているポートは、私も自分のポート8000のパスを転送する必要がありますか? –
あなたはすでに上記の 'httpd'に基づいています –
私は自分のエラーがどこにあるのか少し混乱しています。私は公開IPアドレスにヒットするとすぐに実行されるindex.htmlファイルを持っています(例えば、http://12.12.12.12.12)。今、 'node nod'を実行すると、私の' localhost:8000'は自分のノードファイルを表示します。しかし、私が 'http://12.12.12.12.12:8000'に行くと、表示されません。 –