Nginx的配置文件详解

  Nginx的高级配置

  点击此处即可查看nginx的官方文档 1.Nginx的源码编译安装

  安装包:

  点击此处即可下载nginx

  1.安装nignx并解压

  2.关闭debug日志

  在这里插入图片描述

  3.源码编译

  (1).configure配置

  (2)编译与安装

  4.开启nginx

  在这里插入图片描述 2.Nginx的基础配置 1.更改工作进程数

  在这里插入图片描述

  在这里插入图片描述

  在图形界面更改cpu数(注意:需要先关机才能生效)

  在这里插入图片描述

  在这里插入图片描述

  测试:

  在这里插入图片描述 2.vim高量检测语法

  测试:

  在这里插入图片描述 3.设定用户和组

  在这里插入图片描述

  测试:

  在这里插入图片描述 3.nginx的平滑升级 1.版本升级

  1.下载新版本的nginx并解压

  2.源码编译

  注意:此时一定不能make install 直接安装,因为旧版本的nginx已经启动

  在这里插入图片描述

  3.备份旧版本nginx程序

  4.拷贝二进制程序

  在这里插入图片描述

  5.添加新版本的nginx进程

  在这里插入图片描述

  6.停止旧版本的nginx进程

  在这里插入图片描述

  测试:

  2.版本回退

  1.拷贝二进制程序

  2.添加旧版本的nginx进程

  在这里插入图片描述

  在这里插入图片描述

  3.停止新版本的nginx进程

  在这里插入图片描述

  测试:

  4.日志截断

  在这里插入图片描述

  在这里插入图片描述

  在这里插入图片描述

  在这里插入图片描述

  5.编写nginx启动脚本

  1.安装apache

  2.查看并拷贝脚本文件

  3.更改脚本文件

  在这里插入图片描述

  4.关闭nginx

  测试:

  在这里插入图片描述

  在这里插入图片描述 6.限制并发连接数

  1.更改配置文件

  在这里插入图片描述

  在这里插入图片描述

  在这里插入图片描述

  在这里插入图片描述

  2.重新加载

  3.创建目录

  4.下载图片更改图片权限

  测试:

  1.在网页上输入: 172.25.66.1/download/tests.jpg 发现可以访问图片

  在这里插入图片描述

  2.清空日志

  3.压测:1个并发

  在这里插入图片描述

  4.查看日志

  发现所有的请求均通过,因为只有一个并发

  在这里插入图片描述

  5.清空日志

  6.压测:10个并发

  在这里插入图片描述

  7.查看日志

  发现只有一个请求成功(200),其他的均失败(503)。因为设定了限制并发数为1

  在这里插入图片描述 7.限速

  方式1:

  1.更改配置文件

  在这里插入图片描述

  2.重新加载

  3.压测

  在这里插入图片描述

  方式2:

  1.更改配置文件

  在这里插入图片描述

  2.重新加载

  3.压测

  在这里插入图片描述 8.获取客户端真实ip

  1.关闭原来的nginx

  在这里插入图片描述

  2.重新编译

  在这里插入图片描述

  注意:一定不要执行make install,直接将二进制文件拷贝过来即可

  3.拷贝二进制文件

  4.更改配置文件

  (1)添加虚拟主机

  在这里插入图片描述

  (2)添加解析

  在这里插入图片描述

  测试:

  在这里插入图片描述

  在这里插入图片描述

  (3)指定返回参数

  在这里插入图片描述

  测试:

  (4)返回原始ip

  默认返回的是记录ip中的最后一个:

  在这里插入图片描述

  测试:

  返回记录ip中的第一个(源ip):

  在这里插入图片描述

  测试:

  9.添加动态模块

  1.关闭nginx

  2.重新编译

  在这里插入图片描述

  在这里插入图片描述

  安装包:

  3.拷贝二进制文件

  4.拷贝image模块

  5.下载图片并拷贝

  6.浏览器访问

  输入:172.25.66.1/download/tests.jpg,发现可以访问图片

  在这里插入图片描述

  7.更改配置文件

  在这里插入图片描述

  在这里插入图片描述

  测试:

  1.清理缓存

  在这里插入图片描述

  2.刷新网页:发现图片大小发生了改变

  在这里插入图片描述

  网页直接访问 172.25.66.1/download/ ,发现报错

  在这里插入图片描述

  解决方案:

  在这里插入图片描述

  测试:

  先清理缓存,再刷新

  在这里插入图片描述

  在这里插入图片描述 10.设定缓存

  1.更改配置文件

  在这里插入图片描述

  2.重新加载

  测试:

  在这里插入图片描述

  在这里插入图片描述

  在这里插入图片描述 11.配置SSL实现HTTPS加密访问

  1.添加主机

  (1).更改配置文件

  在这里插入图片描述

  (2).建立根目录并编写文件

  (3).重新启动

  (4).添加解析

  在这里插入图片描述

  测试:

  2.添加SSL模块

  (1).更改配置文件

  在这里插入图片描述

  (2).重新编译

  在这里插入图片描述

  在这里插入图片描述

  (3).拷贝二进制文件

  (4).拷贝image模块

  (5).制作证书并拷贝

  在这里插入图片描述

  (6).重新加载

  在这里插入图片描述

  (7).添加解析

  在这里插入图片描述

  网页测试:

  输入:www.westos.org/

  在这里插入图片描述

  输入:https://www.westos.org

  在这里插入图片描述

  添加证书:

  在这里插入图片描述

  在这里插入图片描述

  在这里插入图片描述

  查看证书:

  在这里插入图片描述

  在这里插入图片描述

  那如何自动实现https加密呢?

  访问淘宝,发现淘宝做了重定向(注意:需要连接无线)

  在这里插入图片描述

  在这里插入图片描述

  利用rewrite模块实现:将http重定向到https即可

  临时重定向:

  1.更改配置文件

  在这里插入图片描述

  2.重新加载

  测试:

  在这里插入图片描述

  永久性重定向:

  1.更改配置文件

  在这里插入图片描述

  2.重新加载

  测试:

  在这里插入图片描述

  网页测试:

  输入:www.westos.org,发现自动跳转到 https://www.westos.org

  在这里插入图片描述

  在这里插入图片描述

  对$1的理解:

  在这里插入图片描述

  在这里插入图片描述

  网页测试:

  在这里插入图片描述

  在这里插入图片描述 12.重定向

  (1). 将 www.westos.org/bbs 重定向到 bbs.westos.org

  1.添加虚拟主机

  在这里插入图片描述

  2.重新加载

  3.建立根目录并编写文件

  4.添加解析

  在这里插入图片描述

  测试:

  输入:bbs.westos.org 可查看到站点域名所发布的内容

  在这里插入图片描述

  5.重定向

  在这里插入图片描述

  6.重新加载

  测试:

  在这里插入图片描述

  在这里插入图片描述

  改进:

  在这里插入图片描述

  测试:

  在这里插入图片描述 (2).将 bbs.westos.org 重定向到 www.westos.org/bbs

  1.重定向

  在这里插入图片描述

  2.重新加载

  3.拷贝/bbs目录

  测试:

  在这里插入图片描述

  在这里插入图片描述 (3).关闭默认server

  当访问不存在域名站点时,只要做了本地解析,测试发现会自动跳转到默认发布页面,这样存在安全隐患。

  在这里插入图片描述

  在这里插入图片描述

  在网页上输入:test.westos.org 发现访问的是nginx的默认发布首页

  在这里插入图片描述

  为了避免恶意解析,所以需要关闭默认server

  1.当访问不存在的站点域名时,直接返回500错误

  在这里插入图片描述

  测试:

  在这里插入图片描述

  在网页上输入:test.westos.org 返回500报错

  在这里插入图片描述 改进:一般在生产环境中不会直接返回500报错,而是将其重定向到其他域名需要宣传的站点,这样不仅避免了恶意解析,又提高了访问量(比如:某个公司宣传界面等)

  2. 当访问不存在的站点域名时,重定向到其他站点

  在这里插入图片描述

  在这里插入图片描述

  测试:

  在这里插入图片描述

  在网页上输入:test.westos.org 会自动跳转到 www.westos.org

  在这里插入图片描述

  在这里插入图片描述 13.制作防盗链

  1.何为盗链?

  模拟server2结点盗链server1结点的图片:

  1.配置apache服务器端

  在这里插入图片描述

  2.配置nginx服务器端

  测试:

  输入:172.25.66.2(server1的ip) 即可访问到server2结点上的图片信息;这就是图片盗链

  在这里插入图片描述

  2.那么如何防盗链呢?

  在这里插入图片描述

  在这里插入图片描述

  测试:

  在网页上输入:172.25.66.1 发现无法查看到westos.jpg图片,说明防盗链成功

  在这里插入图片描述

  改进:

  直接返回403错误,显得很不专业,所以我们来做个重定向,将其重定向到其他站点。在实际生产环境中,一般是将其重定向到外部其他的站点

  1.更改配置文件

  在这里插入图片描述

  2.重新加载

  3.下载图片并拷贝

  测试:

  输入:172.25.66.1 时,原本server2服务器想盗链server1服务器的westos.jpg图片,现在由于server1服务器做了防盗链,将其重定向到另一个站点。 因此访问到的便是daolian.jpg图片,达到了很好的防盗链效果

  在这里插入图片描述