Nginx 概述:
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。
Nginx 还是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。
一、什么是反向代理:
反向代理服务器架设在服务器端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。
二、反向代理的主要作用:
目前web网站使用反向代理,除了可以防止外网对内网服务器的恶性攻击、缓存以减少服务器的压力和访问安全控制之外,还可以进行负载均衡,多个客户端给服务器发送的请求,nginx服务器接收到之后,将用户请求分配给多个服务器,Nginx不处理用户请求,请求的来源也就是客户端是明确的,但是请求具体由哪台服务器处理的并不明确了,这时Nginx就是反向代理
反向代理,主要用于服务器集群分布式部署的情况下,反向代理隐藏了服务器的信息!
正向反向区别:正向代理模式屏蔽或者隐藏了真实客户端信息,反向代理隐藏了服务器的信息!
三、正向代理:
就是假设有一个内网
内网有两台机器,这两台机器只有 a 可以上网
b 不能上网,但是 a 和 b 通过网络相连接
这时如果 b 想访问外网,就可以通过 a 来正向代理访问外网
正向代理就是在内网中模拟目标服务器,把内网中其它机器的请求
转发给外网中的真正的目标服务器
所以正向代理是接受内网其它机器的请求的
正向代理最大的特点是客户端非常明确要访问的服务器地址;服务器只清楚请求来自哪个代理服务器,而不清楚来自哪个具体的客户端;正向代理模式屏蔽或者隐藏了真实客户端信息。
四、Nginx 环境
4.1下载
1.免费开源版的官网网站:http://nginx.org
Ngnix有windows 版本和linux版本,推荐在linux下使用nginx,一般下载稳定版本(Stable version)
2.下载nginx-1.20.0.tar.gz 的源代码文件:wget http://nginx.org/download/nginx-1.20.0.tar.gz
wget不支持断点续传,如果宕机或者网络停掉,可能会导致下载失败,建议下小的包可以用wget
我这次是直接复制链接地址到迅雷下载好,再通过命令rz上传到/usr/locat/src中
打开官网:http://nginx.org/en/download.html
Nginx的安装需要确定 Linux安装相关的几个库,否则配置和编译会出现错误,具体的安装过程为:
4.2 安装
安装前准备
安装依赖包,可以通过一次性安装,执行命令如下:
yum install gcc gcc-c++ openssl-devel pcre-devel cmake zlib-devel -y
4.3 正式安装
下载源码包
wget http://nginx.org/download/nginx-1.20.0.tar.gz
#解压下载下来的ngnix文件,执行命令:
tar -zxvf nginx-1.20.0.tar.gz
cd nginx-1.20.0
- 检测编译所需的依赖模块
--prefix=/usr/local/nginx --with-pcre --user=daemon --group=daemon --with-http_stub_status_module --without-http_gzip_module --with-http_ssl_module --with-http_v2_module --with-stream
- 执行命令进行编译:make