基本的web服务器与node.js和expression为服务的HTML文件和资产

我做了一些前端实验,我想有一个非常基本的networking服务器来快速启动一个项目,并提供文件(一个index.html文件+一些CSS / JS / IMG文件)。 所以我正在尝试使用node.js来expression,我已经使用了这两个,但是这次我不想使用一个渲染引擎,因为我只有一个静态文件,我得到这个代码HTML文件但不是资产(错误404):

var express = require('express'), app = express.createServer(); app.configure(function(){ app.use(express.static(__dirname + '/static')); }); app.get('/', function(req, res){ res.sendFile(__dirname + '/index.html'); }); app.listen(3000); 

有没有简单的方法来做到这一点(如果可能的话在一个文件中)或者Express需要使用视图和渲染引擎?

你可以使用 像node.js这样的解决scheme (链接不再起作用) ,因为我以前写博客。

总结一下,安装连接npm install connect

然后将此代码粘贴到与HTML / CSS / JS文件相同的文件夹中的名为server.js的文件中。

 var util = require('util'), connect = require('connect'), port = 1337; connect.createServer(connect.static(__dirname)).listen(port); util.puts('Listening on ' + port + '...'); util.puts('Press Ctrl + C to stop.'); 

现在导航到你的terminal中的文件夹,并运行node server.js ,这将给你一个临时的Web服务器在http://localhost:1337

我遇到这个,因为我有类似的情况。 我不需要或不喜欢模板。 任何你放在公共/目录下的东西都可以作为静态内容(就像Apache一样)。 所以我把我的index.html放在那里,并使用sendfile来处理没有文件的请求(例如:GET http:// mysite / ):

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

以下代码为我工作。

 var express = require('express'), app = express(), http = require('http'), httpServer = http.Server(app); app.use(express.static(__dirname + '/folder_containing_assets_OR_scripts')); app.get('/', function(req, res) { res.sendfile(__dirname + '/index.html'); }); app.listen(3000); 

这将资源加载页面