文章目录
前言
在企业信息化应用环境中,服务器的安全性和响应速度需要根据实际情况进行相应的参数配置,达到最优的用户体验。默认的NGINX安装参数只能提供最基本的服务,还需要调整如网页时间,连接超时,网页压缩等相应参数,才能发挥服务器的最大作用。
一、配置Nginx隐藏版本号
1、隐藏NGINX版本号,避免安全漏洞泄露
①本地查看(查看头部信息)
②浏览器:可以直接在浏览器(谷歌)
2、Nginx隐藏版本号的方法
2.1、修改配置文件法
2.2、修改源码法
二、修改用户和组
若没有安装前创建用户,则在此服务中默认使用的是nobody
1、修改配置文件
2、修改属组属主,重启服务,查看服务状态
三、配置nginx网页缓存时间
1、当nginx将网页数据返回给客户端后,可设置缓存的时间,以方便在日后进行相同内容的请求时直接返回,避免重复请求,加快了访问速度。
2、一般针对静态网页设置,对动态网页不设置缓存时间
3、设置网页图片和缓存时间
4、日志分割设置脚本
4.1、设置脚本
4.2、实现NGINX的日志切割
随着nginx运行时间增加,日志也会增加。为了方便掌握nginx运行状态,需要时刻关注nginx日志文件。太大的日志文件对监控是一个大灾难,定期进行日志文件的切割。Nginx自身不具备日志分割处理的功能,但可以通过nginx信号控制功能的脚本实现日志的自动切割,通过linux的计划任务周期性地进行日志切割。
四、配置nginx实现连接超时
1、为避免同一客户端长时间占用连接,造成资源浪费,可设置相应的连接超时参数,实现控制连接访问时间。
2、超时参数:Keepalive_timeout------设置连接保持超时时间
3、client_header_timeout----指定等待客户端发送请求头的超时时间
4、Client_body_timeout----设置请求体读超时时间
五、更改进程数
1、最大闲置的worker进程 3个(最大闲置并不代表一定要保留)
2、最小运行的worker进程 1个(最少要有一个在运行的进程)
3、最少保留的worker进程 1个(最少要保留一个进程在运行)
4、查找核心数
5、更改进程数
六、网页压缩
七、盗链与防盗链
服务端:192.168.199.132
盗链端:192.168.199.130
1、服务端
1.1、
1.2、
2、盗链端
2.1、
2.2、
2.3、
八、防盗链
1、valid referers:设置信任的网站,即能引用相应图片的网站
2、None:浏览器中referer为空的情况,就是直接在浏览器访问图片
3、Blocked:referer不为空的情况,但是值被代理或者防火墙删除了,这些值不以http://或https://开头
4、后面的网址或者域名:referer 中包含相关字符串的网址
5、If语句如果来源域名不在valid referers所列出的列表中,$invalid referers为1,则执行后面的操作,即进行重写或返回403页面
6、防盗链
九、rewrite跳转
1、跳转
URL看起来更规范、合理,启企会将动态URL地址伪装成静态地址提供服务,网址换新域名后,让旧的访问跳转到新的域名上。服务端某些业务调整
2、反向代理/负载均衡
3、健康检查
4、nginx跳转需求的实现方式
4.1、使用rewrite进行匹配跳转
4.2、使用IF匹配全局变量后跳转
4.3、使用location匹配再跳转
5、rewrite放在server{},if{},location{}段中
5.1、location只对域名后边的除去传递参数外的字符串起作用
6、对域名或参数字符串
6.1、使用IF全局变量匹配
6.2、使用proxy_pass反向代理
十、NGINX正则表达式
1、常用的正则表达式元字符
2、rewrite命令语法
2.1、flag标记说明
3、location 分类
3.1、分类
3.2、location优先级
3.2.1、相同类型的表达式,字符串长的会优先匹配3.2.2、按优先级排列
4、比较rewrite和location
4.1、相同点:都实现跳转
4.2、不同点:rewrite是在同一域名内更改获取资源的路径
4.3、location是对一类路径做控制访问或反向代理,还可以proxy_pass到其他机器
4.4、rewrite会写在location里,执行顺序
4.4.1、执行server快里面的rewrite指令
4.4.2、执行location匹配
4.4.3、执行选定的location中的rewrite指令
总结
1、NGINX:处理静态请求的服务(擅长的功能)
2、特点:3-5万的理论值并发,受cpu与最大文件打开数影响
3、轻量级
4、功能丰富
5、缺点:默认是不支持集群的
6、配置文件组成
6.1、global 全局模块配置
6.2、http 模块配置
6.3、server 模块
6.4、location 匹配url,和路径
7、NGINX的模块
7.1、status\rewrite\FPM\virtual_host 虚拟主机(IP\域名\端口)\gzip\tokens off
8、优化:防盗链、隐藏版本、修改用户和组、缓存时间、日志分割、网页压缩(管理压缩比、最小压缩对象的大小、压缩保存的缓冲区个数和大小、前端缓存是否保存—》临时缓存文件\目录的权限调整)、连接超时、FPM、work工作进程.