NodeJS搭建本地服务器环境

第一步:创建server.js和mine.js文件

server.js

var http = require('http'),
	url = require('url'),
	fs = require('fs'),
	path = require('path'),
	mine = require('./mine').types,
	PORT = 3000;

var server = http.createServer(function(request, response){
	var pathname = url.parse(request.url).pathname,
		realPath = path.join('bi_pc', pathname),	//注意这里更改为项目名称bi_pc
		ext = path.extname(realPath);
	ext = ext ? ext.slice(1) : 'unknown';
	fs.exists(realPath, function(exists){
		if(!exists){
			response.writeHead(404, {
				'Content-Type' : 'text/plain'
			})
			response.write('This request URL ' + pathname + ' was not found on this server.');
			response.end();
		}else{
			fs.readFile(realPath, 'binary', function(err, file){
				if(err){
					response.writeHead(500, {
						'Content-Type' : 'text/plain'
					})
					response.end(err);
				}else{
					var contentType = mine[ext] || 'text/plain';
					response.writeHead(200, {
						'Content-Type' : contentType
					})
					response.write(file, 'binary');
					response.end();
				}
			})
		}
	})
})
server.listen(PORT);
console.log('Server runing at port: ' + PORT + ' .');
mine.js

exports.types = {
	"css" : "text/css",
	"gif" : "image/gif",
	"html" : "text/html",
	"ico" : "image/x-icon",
	"jpeg" : "image/jpeg",
	"jpg" : "image/jpeg",
	"js" : "text/javascript",
	"json" : "application/json",
	"pdf" : "application/pdf",
	"png" : "image/png",
	"svg" : "image/svg+xml",
	"swf" : "application/x-shockwave-flash",
	"tiff" : "image/tiff",
	"txt" : "text/plain",
	"wav" : "audio/x-wav",
	"wma" : "audio/x-ms-wma",
	"wmv" : "video/x-ms-wmv",
	"xml" : "text/xml"
}


第二步:项目文件夹(这里是bi_pc)和这两个js文件放在同级目录


第三步:切换到该目录下,执行node server.js,浏览器访问localhost:3000/index.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值