-
Nginx 的简介:
- Nginx 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP / POP3 / SMTP 代理服务器。
- 它可以作为网站静态资源的 web 服务器,也可以作为其他应用服务器的反向代理服务器。同时, Nginx 还具有负载均衡的功能。
-
Nginx 主要功能:
- 静态资源服务:Nginx 可以作为 Web 服务器,直接处理静态文件请求,如 HTML、CSS、JavaScript、图片等。
- 反向代理:Nginx 可以作为反向代理服务器,然后将应用服务器的响应返回给客户端。这种方式可以隐藏后端服务器的真实地址,提高系统的安全性,并且可以实现负载均衡,将请求分发到多个后端服务器上,提高系统的处理能力
- 负载均衡:Nginx 内置了负载均衡模块,可以实现多种负载均衡算法,如轮询、权重轮询、IP哈希等,根据需要将请求分发到不同的后端服务器上
- HTTP 缓存:Nginx 支持 HTTP 缓存功能,可以缓存静态资源,减少对后端服务器的请求,提高系统的响应速度
- SSL / TLS 加密:Nginx 支持 SSL/TLS 协议,可以对传输的数据进行加密,提高系统的安全性
反向代理和正向代理:
-
反向代理:
- 概念:
- 反向代理服务器位于用户与目标服务器之间,但对用户而言,反向代理服务器加u相当于目标服务器,及用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无需在用户端任何设定。
- 反向代理则是针对服务器端的代理方式。客户端请求目标服务器的内容时,反向代理服务器会代替目标服务器处理这些请求,并将结果返回给客户端。客户端只会知道代理服务器的 IP 地址,而不知道实际的后端服务器集群的存在。反向代理通常用于负载均衡,将请求分发到多个后端服务器上,提高系统的处理能力。此外,反向代理还可以作为内容服务器的替身,提供安全防护,过滤掉不安全的请求。
- 作用:
- 反向代理服务器通常可以用来作为 Web 加速,即使用反向代理作为 Web 服务器的前置机来降低网络和服务器的负载,提高访问效率
- 特点:
- 反向服务器时位于用户和目标服务器之间的
- 用户以为反射代理服务器就是真实服务器。用户不知道真实的服务器到底是谁。
- 反向代理服务器保护客户端信息,称之为服务器端代理
- 概念:
-
正向代理:
- 概念:
- 正向代理是位于客户端和目标服务器之间的代理服务器。
- 客户端向代理服务器发送请求,并指定目标服务器,代理服务器将请求转交给目标服务器,并将从目标服务器获得内容返回给客户端
- 正向代理需要客户端进行一些特别的设置才能使用。它的应用场景包括访问被限制的资源,例如:翻墙等,此时正向代理可以隐藏客户端的 IP 地址,免受攻击。
- 此外,正向代理还可以作为缓存,存储目标服务器返回的数据,提高访问速度。
- 特点:
- 正向代理服务器是位于用户与服务器之间
- 用户请求时,非常明确目标服务器到底是谁,服务器不清除到底是谁访问,以为是代理服务直接发起的请求
- 正向代理服务器保护了用户的信息,所以称之为客户端代理
- 概念:
-
代理总结:
- 反向代理:时服务器端代理,只要用户访问服务器,都是反向代理,实现业务调用
- 正向代理:是客户端代理,只要用户上网就使用正向代理,实现网络通信
- 整个上网过程都是先正向后反向代理
Nginx 安装:
-
上传 Nginx 压缩包到指定目录
-
解压 Nginx 压缩包
-
配置编译 Nginx
- 配置编译方法:
./configure
- 配置编译后结果信息:
- 配置编译方法:
-
编译 Nginx:
- 在 Nginx 源文件目录中直接运行 make 命令
-
安装 Nginx
- 在运行 make 命令的 Nginx 目录中运行 make install 命令
- 安装后可以运行 whereis nginx 命令查找 Ngninx 工作目录
-
配置 Nginx:
- 配置文件位于 conf/ngixn.conf
- 配置文件位于 conf/ngixn.conf
-
Linux 下使用 Nginx:
- 进入 nginx/sbin 目录中执行如下命令:
- 启动:./nginx
- 重启:./nginx -s reload
- 关闭:./nginx -s stop
- 进入 nginx/sbin 目录中执行如下命令: