2017-07-03 4 views
2

現在、Herokuの展開をセットアップ中です。ローカルで実行するとすべてうまく動作しますが、私はHerokuから次のエラーを受け取ります。内部サーバーエラーノードjs

at=info method=GET path="/" host=pure-cliffs-68507.herokuapp.com 
request_id=66cd6aa8-209d-4065-88ce-ad201ce6e713 fwd="210.86.90.97" 
dyno=web.1 connect=0ms service=24ms status=500 bytes=524 protocol=https 
2017-07-03T15:05:22.180020+00:00 app[web.1]: GET/500 19ms - 148b 
2017-07-03T15:05:22.181519+00:00 app[web.1]: Error: Failed to lookup view " index.html" in views directory "/app" 
2017-07-03T15:05:22.181520+00:00 app[web.1]:  at EventEmitter.render (/app/node_modules/express/lib/application.js:580:17) 
2017-07-03T15:05:22.181521+00:00 app[web.1]:  at ServerResponse.render (/app/node_modules/express/lib/response.js:971:7) 
2017-07-03T15:05:22.181521+00:00 app[web.1]:  at /app/routes.js:8:7 
2017-07-03T15:05:22.181522+00:00 app[web.1]:  at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5) 
2017-07-03T15:05:22.181522+00:00 app[web.1]:  at next (/app/node_modules/express/lib/router/route.js:137:13) 
2017-07-03T15:05:22.181523+00:00 app[web.1]:  at Route.dispatch (/app/node_modules/express/lib/router/route.js:112:3) 
2017-07-03T15:05:22.181523+00:00 app[web.1]:  at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5) 
2017-07-03T15:05:22.181524+00:00 app[web.1]:  at /app/node_modules/express/lib/router/index.js:281:22 
2017-07-03T15:05:22.181525+00:00 app[web.1]:  at Function.process_params (/app/node_modules/express/lib/router/index.js:335:12) 
2017-07-03T15:05:22.181525+00:00 app[web.1]:  at next (/app/node_modules/express/lib/router/index.js:275:10) 

私はそれがファイルパスと関係があると考えています。私は現在、ベースディレクトリ(すなわちproject /)にすべてがあるので、以下を使用しています。ここで

app.use(express.static(path.join(__dirname, '/'))); 
app.set('views', __dirname); 

私のGETリクエスト

app.get('/', function(req, res) { 
    res.render('index.html'); 
}); 

app.get('/browsePage', function(req, res) { 
    res.render('browsePage.html'); 

}); 

のいくつかは、事前にご協力いただきありがとうございます。

答えて

4

htmlページをnode.jsに表示することはできません。あなたはhtmlファイルを送信して試すことができます:あなたのコードは、ローカルで作業している場合

app.get('/', function(req, res) { 
    res.sendFile('index.html'); 
}); 

app.get('/browsePage', function(req, res) { 
    res.sendFile('browsePage.html'); 
}); 
1

は、ビューディレクトリ「/アプリ」

にビュー「のindex.html」を検索できませんでした、あなたを確認することができますもう一度パス? すべきであり、それはです:

app.use(express.static(__dirname + '../public')); 

ところで、あなたはhttps://pugjs.org/api/getting-started.html

ビュー(ヒスイ、..)をレンダリングするために任意のテンプレートを使用する必要があります
関連する問題