如何使用express js创建一个简单的html服务器

时间:2014-07-01 19:20:29

标签: javascript node.js express fileserver

我是node.js的新手我想创建一个简单的express.js静态文件服务器,但我有一些问题。 我已经在全球范围内安装了express.js 4.2:

npm install  -g express-generator

我在httpsrv.js中有这段代码:

var http = require('http');
var express = require('express');
var app = express();

app.use('/', express.static(__dirname + '/public'));
app.listen(3000, function() { console.log('listening')});

我不确定是否可以,我认为这还不够,但我无法运行它因错误而失败:无法找到模块'表达'。

我想创建一个简单的http服务器,它可以从特定文件夹(" \ public"例如)和我使用.html语言提供服务。我在互联网上发现了很多废话,我不想使用这个.jade的东西而且我不想创建一个带有快递等的空网页应用程序。我想要express.js http服务器可以操作像Apache一样,可以首先从指定的文件夹提供静态html页面。 任何人都可以帮我这个,建议一篇好文章,一步一步解释,因为我是初学者。

3 个答案:

答案 0 :(得分:20)

如果您只是尝试从名为“public”的目录中提供静态文件,那么您可能会对这样的应用程序感到满意:

var path = require('path');
var express = require('express');

var app = express();

var staticPath = path.join(__dirname, '/public');
app.use(express.static(staticPath));

app.listen(3000, function() {
  console.log('listening');
});

您需要确保已安装Express。您可能会在与上述JavaScript文件相同的目录中运行npm install express --save。一旦准备就绪,您将运行node the_name_of_the_file_above.js来启动服务器。

答案 1 :(得分:9)

首先安装快递模块,尽管快递发生器

npm install express

尝试删除公共

var express = require('express');
var app = express();

app.use('/', express.static(__dirname));
app.listen(3000, function() { console.log('listening')});

工作正常。

答案 2 :(得分:1)

这个问题甚至不需要任何代码或框架;从npm安装http-server,导航到命令提示符下的文件夹并运行以下命令:

http-server

它会启动一个轻量级的http服务器并立即从文件夹中提供静态内容,可以使用http://localhost

查看