基于ubuntu 22.04搭建nodejs http服务器

导航不迷路:

1、搭建nodejs http服务器(本文)

2、搭建nodejs https服务器

3、搭建nodejs 真正的服务器

ubuntu 安装nodejs

  • 查找源上有那些nodejs:
sudo apt-cache search nodejs
  • 安装nodejs:
 sudo apt install nodejs
  • 安装npm:
sudo apt install npm

备注:
如果安装失败,提示not found xxx,那么,更新下软件包索引:

sudo apt update

编写nodejs脚本:

思路:

  • 通过require引入http模块
  • 创建http服务
  • 监听端口,处理客户端访问

nodejs代码:

$ vim http_server.js
'use strict'

var http = require('http');

var app = http.createServer(function(req, res){
  res.writeHead(200, {'Content-Type':'text/plain'});
  res.end('Hello, I am a http server\n');
}).listen(8080, '0.0.0.0');

解释下:
作用是:监听在本地的 8080 端口,任何访问该端口的请求都会返回一个包含 “Hello, I am a http server” 文本的响应。下面是对这段代码的解释:

  • ‘use strict’;: 这是 JavaScript 的严格模式声明,它可以帮助开发者避免一些常见的错误,并使代码更加健壮。
  • var http = require(‘http’);:
    这一行引入了 Node.js 的内置模块 http,用于创建 HTTP 服务器和处理 HTTP 请求。
  • var app = http.createServer(function(req, res){…}).listen(8080, ‘0.0.0.0’);:
    • 这段代码创建了一个 HTTP 服务器实例 app,并通过 listen 方法将其绑定到 8080 端口和 IP 地址 0.0.0.0。
    • createServer 方法接受一个回调函数作为参数,该函数会在每次请求到达服务器时被调用。这个回调函数接收两个参数 req(请求对象)和 res(响应对象)。
    • 在回调函数中,通过 res.writeHead(200, {‘Content-Type’:‘text/plain’}); 设置了响应的 HTTP 状态码为 200(表示成功),并且指定了响应的内容类型为纯文本。
    • res.end(‘Hello, I am a http server\n’); 发送了包含 “Hello World” 文本的响应给客户端,并通过 res.end() 结束了响应。

运行代码:

$ node http_server.js

看下服务器端口监听情况:

ubuntu@VM-4-9-ubuntu:~$ netstat -ntpl
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      21005/node          
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::22                   :::*                    LISTEN      -                   
ubuntu@VM-4-9-ubuntu:~$ 

发现8080端口已经被监听了!

使用浏览器进行访问:

在这里插入图片描述

后台永久运行:

当然,作为服务器,你怎么可能这么运行呢?更改启动方式,让可以后台运行:

安装forever工具:

$ npm install forever -g

一定要加-g,表示可以在机器任意目录执行forever,否则只能在安装目录。

启动服务:

$ forever start http_server.js

总结:

当然,这个是我们搭建来学习用的,真正搭建服务肯定还得使用https服务,还得申请证书了,后面介绍!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值