Nginx简介及其安装

Nginx是一款高性能的HTTP和反向代理服务器,在高连接并发的情况下,它能够支持高达50000个并发连接数的响应,但是内存、CPU等系统资源消耗却很低,运行很稳定。


介绍Nginx在系统架构(网关入口)中的作用,总结如下:

  1. 路由功能(与微服务对应):域名/路径,进行路由选择后台服务器
  2. 负载功能(与高并发高可用对应):对后台服务器集群进行负载
  3. 静态服务器(比Tomcat性能高很多):在mvvm模式中,充当文件读取职责

总结:实际使用中,这三项功用,会混合使用。比如先分离动静,再路由服务,再负载机器


正向代理及反向代理

正向代理,即代理,意思是一个位于客户端和原始服务器(Origin Server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。
Nginx简介及其安装

反向代理,是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
Nginx简介及其安装



安装Nginx

接下来,我们就来看看如何安装我们的Nginx,在安装Nginx之前,我们需要先安装make及g++,一般情况下是无需安装的,因为Linux一般是默认安装的,如果没有的话,请输入下列命令进行安装:

  1. 安装make:yum -y install autoconf automake make
  2. 安装g++: yum -y install gcc gcc-c++

然后再安装Nginx之前,我们还需安装一些Nginx的相关依赖,主要是有关解析正则表达式、压缩解压、以及openssl等,依次执行下列命令即可:
yum -y install pcre pcre-devel
yum -y install zlib zlib-devel
yum install -y openssl openssl-devel


首先我们先去下载一个Nginx,如下:
Nginx简介及其安装
Nginx简介及其安装

等待成功下载完成后,我们将其解压
Nginx简介及其安装
Nginx简介及其安装

然后我们进入其源码中,我们需要将其先编译一下,如下:
Nginx简介及其安装

  • - -prefix   指定安装目录
  • - -with-http_ssl_module   安装https模块
  • - -with-http_ssl_module   安装服务器状态模块

接下来就等待程序编译,当出现 creating objs/Makefile 就代表编译成功,如下图
Nginx简介及其安装

编译成功后,直接运行 make && make install 进行安装
Nginx简介及其安装

安装完成后,我们就可以查看设置的安装目录,也可以使用 whereis nginx 进行查找
Nginx简介及其安装

我们查看一下该目录的内容:
Nginx简介及其安装

  • conf   配置文件
  • html   静态网页文件
  • logs   日志文件
  • sbin   二进制程序

我们直接启动Nginx,如下:
Nginx简介及其安装

  • sbin/nginx -t   检测Nginx配置文件是否正确
  • sbin/nginx -c nginx.conf   指定启动Nginx的配置文件,如果不指定,默认为 conf/nginx.conf
  • sbin/nginx -s stop   停止
  • sbin/nginx -s quit   退出
  • sbin/nginx -s reload   重新加载 nginx.conf

启动完成后,我们可以访问一下浏览器,结果如下:
Nginx简介及其安装



上述采用的是编译安装的一种方式,其实我们还有一种更为简单的方法,就是使用 yum 进行安装,我们可以直接使用 yum install nginx 进行安装,但是我们会发现它会提示找不到
Nginx简介及其安装

这里我们就需要添加 epel 的扩展源,如下:
Nginx简介及其安装

接下来再次运行 yum install nginx 安装Nginx,安装完成后,我们可以使用 whereis nginx 来查找一下其安装位置,然后进行启动Nginx
Nginx简介及其安装

yum安装的方式虽然简单,但是从 whereis nginx 炒作出来的结果来看,它不能像我们编译安装一样安装在自己制定的位置,其安装位置较为分散。