服务器与客户端
服务器是提供网络服务的机器,通过安装特殊的软件(或者是运行某段特殊的代码)来提供服务。
服务器 = 电脑 + 能给其它电脑/设备提供服务的软件
客户端与服务器:提供服务的是服务器,享受服务的是客户端
服务器的类型
根据服务不同,服务器的类型也不同:
- web服务器。安装apache, tomcat, iis, 或者在nodejs环境写代码 来提供:图片浏览,新闻浏览....等服务的服务器。
- ftp服务器。安装serv-U软件,为其它电脑提供文件下载,共享服务。
- 数据库服务器。安装mysql软件,为其它电脑提供数据库服务。 .... web服务器:
- 用户通过浏览器来享受web服务器提供的服务
- 我们用url地址来访问某个web服务器上的资源
- 浏览器端发起请求,web服务器收到请求后,响应这个请求,并将处理结果返回给浏览器
ip地址
全称:internet protocol address
作用:标记一个网络设备,想要访问他就得找到他的ip
分类:ipV4 ipV6
格式:[0-255].[0-255].[0-255].[0-255] 即为四个 0-255 的数字组成(以ip4为例)。在同一个网络中,计算机的IP是不允许相同的,都是唯一的。
域名
域名:ip地址的别名,由于ip地址不好记忆,我就给它们取个好记的别名。localhost这个域名特指127.0.0.1这个地址。
域名解析系统:把域名翻译成Ip地址的系统。
端口
一个IP地址的端口可以有65536个,范围是从[0,65535])。不同的端口被不同的软件占用,以提供不同的服务。 一台电脑可以通过安装多个服务器端软件来提供服务,比如Web服务、FTP服务、SMTP服务等。显然,仅仅通过ip地址是无法区分不同的服务的。
- 服务器要提供服务必须要通过指定的端口
- 服务器与客户端都需要通过端口要进行通信
- 端口是可以编程分配
- 有一些端口号是被预定了的。
- http: 80
- https:443
- mysql:3306
用http 模块写一个简单的web服务器
// 1. 引入http模块
const http = require('http');
// 2. 创建服务
const server = http.createServer(function (request, response) {
console.log('来人了')
// 往客户端发送内容
res.end('123321');
});
// 3. 启动服务
server.listen(8000, function () {
console.log('启动服务器');
});
先启动服务器
然后输入端口,
效果如下