我有一个使用app.js
的节点服务器文件express
。
该文件看起来像这样
var express = require('express')
var app = express();
app.use(express.static(__dirname + '/public'))
app.get('/', function (req, res) {
res.send('Hello World!')
})
app.listen(3000, function () {
console.log('Example app listening on port 3000!')
});
如果我从我的终端运行$ node app.js
它会启动,如果我在我的计算机上导航到localhost:3000
,我会看到Hello World!
。
我已将文件上传到服务器并尝试导航到index.html
文件夹中的public
文件,但它无法正常工作。
也许我错过了很多步骤,但有人可以建议我如何在我的服务器上启动node
应用程序吗?
答案 0 :(得分:1)
您的服务器不会在任何地方发送index.html。它只通过发送文本“Hello World!”来提供“/”路径。
使用Node.js,您必须告诉您要为每条路线发送哪些内容。
您只需发送特定文件:(确定,但很脏)
app.get('/index.html', function (req, res) {
res.send(PATH_TO_FILE/index.html);
});
或者指定默认情况下用于提供文件的路径:
app.use(express.static(__dirname + '/public'));
并且您将所有公共文件自动投放到公用文件夹中:
YOUR_PROJECT/public/AUTOMATICALLY_SERVED_FILES
例如,AUTOMATICALLY_SERVED_FILES
可以是index.html
或css/style.css
。
注意:此时NGINX没用。
答案 1 :(得分:0)
在服务器上,nodejs配置正确吗?
我将forever与nodejs一起使用,如果你想在linux基础系统上使用像node一样的服务,这很有用。