三、第五节 实现一个真正的 Web服务器

引入 express 模块 

express专门用于处理node服务的,它里面有很多功能,我们可能只是用到里面的一小部分,这一小部分也足够我们使用了。

引入 serve-index 模块

可以将我们整个目录发布出来,就行我们apach nginx里面发布整个目录,这个目录下面的所有的文件都共享出来了,都可以看到 ,通过浏览器进行浏览

指定发布目录

我们前面说了http和https知识,加上我们今天讲的两个模块,我们就可以构建一个真正的wen服务器了。

我们创建一个 文件夹 webserver,在里面创建一个server.js文件

我们今天创建这个web服务器既支持http也支持 https,并且我们设置了一个 发布目录,今后我们要发布的文件直接放在发布目录下,就可以直接通过浏览器访问了。 

安装

npm install express

npm install serve-index

我们在public下建一个文件txt文件

'use strict'

var http = require('http');
var https = require('https');
// 主要用于读取证书 
var fs = require('fs');

var serveIndex = require('serve-index');

var express = require('express');

// 实例化express对象
var app = express();

//顺序不能换
// 浏览路径 处理
app.use(serveIndex('./public'));
// 指定静态发布目录
app.use(express.static('./public'));

var options = {
	key  : fs.readFileSync('./cert/1557605_www.learningrtc.cn.key'),
	cert : fs.readFileSync('./cert/1557605_www.learningrtc.cn.pem') 
}

var https_server = https.createServer(options, app);
https_server.listen(443, '0.0.0.0');

var http_server = http.createServer(app);
http_server.listen(80, '0.0.0.0');

node server.js 来运行程序

如果误报80端口被占用

执行ps  -ef |  grep  forever

查询是哪个进程占用了80端口

netstat -ntpl | grep 80

我们通过kill -9 -进程号,将该进程杀死

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章