最初の本番ノードのWebサイトを立ち上げようとしています(本番Webサーバー上の基本的なHello World)。
以下は私が使用しているものです(Apache Webサイトをポート:9000に、ノードWebサイトをポート:8000に渡すための基本的なhttpプロキシ)。apache vhostsは期待どおりに転送されるため、この部分が機能することはわかっています。ただし、機能しないのはノード部分です。代わりに、以下のエラーが発生します。
"Cannot GET /"
これはUbuntu12.04でノード0.8.1を実行しています
私はこれをforever.jsでホストしています(永久にfoo.jsを起動します)。NODE_ENVをエコーすると、「本番」と表示されます
パスにnode_modulesがないことにも注意してください(requireステートメントで確認できます)**これが私の問題と関係があるかどうかはわかりません
var httpProxy = require('/usr/local/lib/node_modules/http-proxy/lib/node-http-proxy');
var express = require('/usr/local/lib/node_modules/express/lib/express');
httpProxy.createServer(function (req, res, proxy) {
var nodeVhosts = ['www.mysite.com'];
var host = req.headers['host'];
var port = nodeVhosts.indexOf(host) > -1
? 8000
: 9000;
proxy.proxyRequest(req, res, {host: 'localhost', port: port});
}).listen(80);
var one = express.createServer();
one.get('/', function(req, res){
res.send('Hello from app one!')
});
var app = express.createServer();
app.use(express.vhost('localhost', one));
app.listen(8000);