Linux下Nginx的安装与配置

一、Nginx相关概念
1.1 Nginx简介

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器

Nginx特点:
  • 占有内存少
  • 并发能力强

百度、京东、新浪、腾讯等都在使用Nginx。

1.2 Nginx的优点

(1)高并发:在连接高并发的情况下,它能够支持高达 50,000 个并发连接数的响应,并且cpu、内存等资源消耗却非常低,运行非常稳定。

(2)Nginx作为负载均衡服务:Nginx 既可以在内部直接支持程序对外进行服务,也可以支持作为 HTTP代理服务对外进行服务。

(3)配置文件简单易懂。

(4)Nginx 支持热部署:几乎可以24小时不间断的运行,即使运行数个月也不需要重新启动,还能够在不间断服务的情况下,对软件版本进行升级。

1.3 Nginx的应用场景

(1)http服务器:Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。

(2)虚拟主机:可以实现在一台服务器虚拟出多个网站

(3)反向代理,负载均衡:当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会出现某台服务器负载高而某台服务器闲置的情况。

反向代理(Reverse Proxy)
简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器,然后我们让代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

二、Nginx的安装与配置
2.1 Nginx的安装
  • 2.1.1 使用Docker安装
$ docker pull nginx  拉取Nginx镜像
$ docker run --name 设置容器的名字 -p 设置端口:80 -d nginx       创建Nginx容器
$ docker attach 容器id   进入Nginx容器
2.2 Nginx的配置
  • 2.2.1 进入配置文件 默认路径在/usr/local/etc/nginx/nginx.conf
vim /usr/local/etc/nginx/nginx.conf   进入配置文件
  • 2.2.2 配置文件说明
  • 1、全局块:配置影响nginx全局的指令。
  • 2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
  • 3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。
  • 4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。
  • 5、location块:配置请求的路由,以及各种页面的处理情况。
2.3 配置网站
  • 2.3.1 在Nginx的html文件中添加自己的网页文件
cd /usr/local/Cellar/nginx/1.17.7/html/

添加之后在配置文件中,添加与server平级新的server块


  • 2.3.2 修改配置文件之后需要重启Nginx
$ nginx -s reload  重新加载配置

参考文档

其他常用命令:

指令

功能

nginx -V

查看版本,及配置文件地址

nginx -h

帮助,显示所有指令

nginx -s reload

重新加载配置

nginx -s reopen

重启

nginx -s stop

停止

nginx -s quit

退出 nginx