この質問は何百万回も聞かれていると思いますが、現時点では次の問題の解決策は見つかりませんでした。
nodejsとexpressを使用して実行されている基本的なアプリケーションがあります。ノードでアプリケーションを実行すると、デフォルトでパブリックフォルダーのindex.htmlに送信されます。ルートを設定していなくても。私はこれを実現させたい。
iisnodeをインストールし、「デフォルトのWebサイト」の下に「デバイス」という新しいアプリケーションを作成しました。私は自分のアプリケーションを変更せずにそこに置きました。周りを読んで、web.configでいくつかのものを整理する必要があり、ここで説明した構成(yamlではない)を使用することにしました:
http://tomasz.janczuk.org/2012/05/yaml-configuration-support-in-iisnode.html
ブラウザにアプリをロードしようとすると、常にapp.jsでルートを見つけようとし、次のようなメッセージが返されます。
/devices/を取得できません
私は本当にこれで髪を抜いていて、どうしたらいいかわかりません!app.jsエントリポイント内に静的コンテンツのデフォルトルートを設定する必要がありますか?私は次のものを用意しています:
app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
});
ただし、ルートからアプリケーションをロードしても、index.htmlに引き渡されません。
'http:// localhost / devices /'
これで私を助けることができる人はいますか?