【简单认识Nginx服务性能与安全优化】

news2024/10/6 14:38:51

文章目录

    • Nginx隐藏版本相关信息
      • 1.隐藏版本号
      • 2.修改版本号及相关信息
    • 二、修改Nginx运行时的属主和属组
    • 三、配置Nginx网页缓存时间
    • 四、配置Nginx站点日志分割
    • 五、设置Nginx长连接及超时时间
    • 六、配置Nginx网页压缩
    • 七、配置Nginx防盗链
      • 1.模拟盗链
      • 2.配置防盗链并测试


Nginx隐藏版本相关信息

1.隐藏版本号

1、修改 nginx.conf 文件,在http块中添加字段后,重载服务
在这里插入图片描述

2、获取报文信息并查看(浏览器查看或使用命令)
在这里插入图片描述

2.修改版本号及相关信息

1、修改源码信息(修改完需要重新编译安装)
在这里插入图片描述

(修改的只是显示的信息,并不是真正修改版本和信息)

2、重新编译安装

cd /opt/ngnginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
 
make -j4 && make install
 
systemctl restart nginx.service

在这里插入图片描述
/3、获取报文信息并查看
在这里插入图片描述

二、修改Nginx运行时的属主和属组

1、修改 nginx.conf 文件
ps aux | grep nginx

2、查看nginx运行用户发生改变(默认为nobody)
在这里插入图片描述

三、配置Nginx网页缓存时间

当Nginx将网页数据返回给客户端后,可设置缓存的时间,以方便在日后进行相同内容的请求时直接返回,避免重复请求,加快了访问速度
一般针对静态网页设置,对动态网页不设置缓存时间
1、修改 nginx.conf 文件 ,在http块 或server块 或location块中添加 expires 参数
在这里插入图片描述
在这里插入图片描述

2、添加图片,访问测试
在这里插入图片描述在这里插入图片描述

3、查看报文信息,86400代表1天,设置生效

在这里插入图片描述

四、配置Nginx站点日志分割

1、编写脚本(因为放在后一天凌晨执行,所以获取前一天的日期)

在这里插入图片描述

2、执行并测试

在这里插入图片描述

3、加入计划任务
在这里插入图片描述

五、设置Nginx长连接及超时时间

HTTP有一个KeepAlive模式,它告诉web服务器在处理完一个请求后保持这个TCP连接的打开状态。若接收到来自同一客户端的其它请求,服务端会利用这个未被关闭的连接,而不需要再建立一个连接。
KeepAlive 在一段时间内保持打开状态,它们会在这段时间内占用资源。占用过多就会影响性能。
1、修改 nginx.conf 文件
在这里插入图片描述

2、检查语法并重启服务
在这里插入图片描述

3、访问并查看请求报文(保持连接,且浏览器超时时间为60s)
在这里插入图片描述

keepalive_timeout
指定KeepAlive的超时时间(timeout)。指定一个长连接最多可以保持多长时间,服务器将会在这个时间后关闭连接。 Nginx的默认值是65秒,有些浏览器最多只保持 60 秒,所以可以设定为 60 秒。若将它设置为0,就禁止了keepalive 连接。
第二个参数(可选的)指定了在响应头Keep-Alive:timeout=time中的time值。这个头能够让一些浏览器主动关闭连接,这样服务器就不必去关闭连接了。没有这个参数,Nginx 不会发送 Keep-Alive 响应头。

client_header_timeout
客户端向服务端发送一个完整的 request header 的超时时间。如果客户端在指定时间内没有发送一个完整的 request header,Nginx 返回 HTTP 408(Request Timed Out)。

client_body_timeout
指定客户端与服务端建立连接后发送 request body 的超时时间。如果客户端在指定时间内没有发送任何内容,Nginx 返回 HTTP 408(Request Timed Out)。

六、配置Nginx网页压缩

Nginx的ngx_http_gzip_module压缩模块提供对文件内容压缩的功能
允许Nginx服务器将输出内容在发送客户端之前进行压缩,以节约网站带宽,提升用户的访问体验,默认已经安装

可在配置文件中加入相应的压缩功能参数对压缩性能进行优化
1、修改配置文件
在这里插入图片描述

   gzip on;							#取消注释,开启gzip压缩功能
   gzip_min_length 1k;      		#最小压缩文件大小
   gzip_buffers 4 64k;      		#压缩缓冲区,大小为4个64k缓冲区
   gzip_http_version 1.1;   		#压缩版本(默认1.1,前端如果是squid2.5请使用1.0)
   gzip_comp_level 6;       		#压缩比率
   gzip_vary on;					#支持前端缓存服务器存储压缩页面
   gzip_types text/plain text/javascript application/x-javascript text/css text/xml application/xml application/xml+rss image/jpg image/jpeg image/png image/gif application/x-httpd-php application/javascript application/json;		
   #压缩类型,表示哪些网页文档启用压缩功能

2、检查语法并重启服务
在这里插入图片描述

3、准备页面并访问测试
在这里插入图片描述

七、配置Nginx防盗链

1.模拟盗链

192.168.206.5为www.ikun.com; 192.168.206.8为www.heizi.com;

www.heizi.com模拟盗取www.ikun.com的网页图片;

使用windows主机访问两个网站。
1、配置域名解析(为了方便这里修改/etc/hosts文件)
192.168.206.5在这里插入图片描述
192.168.206.8
在这里插入图片描述
在这里插入图片描述
在www.ikun.com的首页添加图片
在这里插入图片描述
在www.heizi.com的首页盗取此站点图片
在这里插入图片描述

2.配置防盗链并测试

修改 nginx.conf 文件,如果有缓存配置,需要在缓存配置之前加上
在这里插入图片描述
在这里插入图片描述

再次访问测试www.heizi.com,无法显示图片在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/683750.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【算法】数学相关知识总结

文章目录 gcd 和 lcm取模运算 %求一个点和一片矩形区域之间的最短距离 本文用于记录一些关于算法题中偶尔被使用到的数学相关知识。 gcd 和 lcm gcd 和 lcm 分别是 最大公约数(Greatest common divisor) 和 最小公因数(Least Common Multip…

Nginx-redis【会话保持】

什么是会话保持 当用于登录一个网站服务器, 网站服务器会将用户的登录信息存储下来(存储session),以保证我们能一直处于登录在线的状态 为什么要做会话保持 由于我们使用的是负载均衡轮询机制,会导致用户请求分散在…

nginx页面优化

文章目录 nginx页面优化一.nginx优化1.版本号1.1查看版本号1.2修改版本号1.2.1修改配置文件1.2.2修改源码文件,重新编译安装 2.nginx的日志分割2.1 写日志分割的脚本2.2给脚本执行权限、执行2.3创建定时任务可以每个月固定分割一次 3.nginx的页面压缩3.1配置3.2验证…

第1讲 Camera Sensor Driver课程简介

更多资源: 资源描述在线课程极客笔记在线课程知识星球星球名称:深入浅出Android Camera 星球ID: 17296815Wechat极客笔记圈 课程内容介绍 目标: 课程主要帮助大家理解camera sensor基本概念及原理知识,理解高通camera sensor驱…

前端开发——常用案例分享

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

美one,不想只做李佳琦背后的MCN

文 | 螳螂观察 作者 | 青月 今年618,处在消费提振的关键时期,又面临着行业竞争日趋激烈,各大电商平台都希望能交出一份让市场满意的“期中答卷”,直播不可避免的成为了“兵家必争之地”。 京东请来了罗永浩与“交个朋友”入驻&a…

抖音seo矩阵系统源码|需求文档编译说明(二)

目录 1.抖音seo矩阵系统文档开发流程 2.各平台源码编译方式说明 3.底层技术功能表达式 1.抖音seo矩阵系统文档开发流程 ①产品原型 ②需求文档 ③产品流程图 ④部署方式说明 ⑤完整源码 ⑥源码编译方式说明 ⑦三方框架和SDK使用情况说明和代码位置 ⑧平台操作文档 ⑨程序架…

完美外贸企业邮箱签名设置指南:提升专业形象,优化商务沟通

邮箱签名是一个很好的方式,让您的外贸企业觉得你的公司比较专业。它可以包括公司名称和标志,联系信息和其他相关信息。以下是一些指导原则,可以帮助您创建适合您业务的邮箱签名: 第一步:选择一个合适的Logo 选择一个适合你的企业的标志是很重…

踏响新中国钢铁工业的铿锵足音《淬火丹心》湖北卫视热血开播

由湖北省广播电视局、湖北广播电视台、湖北长江华晟影视有限责任公司等联合摄制,向勇执导,唐曾、吕一、王雨、董晴等主演的大型现代工业题材剧《淬火丹心》,将于6月25日登陆湖北卫视长江剧场开播。该剧以年轻一代中国钢铁人的励志成长为主线&…

排序算法——计数排序

计数排序 以升序排序为例 文章目录 计数排序什么是计数排序实现思路具体步骤实现代码时间复杂度和局限性时间复杂度局限性 什么是计数排序 计数排序是一个非基于比较的排序算法,该算法于1954年由 Harold H. Seward 提出基本思想:是对于给定的输入序列中…

运算放大器(一):电压跟随器

一、电压跟随器 电压跟随器(单位增益放大器、缓冲放大器或隔离放大器)是一种电压放大倍数为 1 的运算放大器,能够将输入信号的电压放大到同样的幅度并输出,同时保持输入输出电阻不变(电压跟随器的输入电阻很大&#x…

Python网络编程:socket包的用法

持续补充 1 网络编程 网络编程,主要用于两台或多台计算机之间的通信,也可以是同一台计算机内不同进程之间的通信。Socket套接字可以用来实现网络通信。关于Socket套接字,需要注意以下几点: Socket是网络通信中应用层和传输层之间…

安装numpy

pip install numpy1.21.6 -i https://mirrors.aliyun.com/pypi/simple/ 最外面的python.exe 是默认版本 下载包----第二种方式

调用有道API实现图片翻译

调用有道API实现图片翻译 1.作者介绍2.关于理论方面的知识介绍3.调用有道API实现图片翻译实验3.1官方代码与结果3.2解码3.3换行输出3.4 示例展示 1.作者介绍 周慧龙,男,西安工程大学电子信息学院&#xff…

心电图机原理及电路超详细讲解

心电图机原理及电路超详细讲解 心电图主要器件导联单极导联和双极导联威尔逊中心端加压导联胸导联 心电图机的结构电路框图介绍输入部分过压保护电路高频滤波电路低压保护及缓冲放大器屏蔽驱动电路导联选择起搏脉冲抑制与定标电路肌电滤波、时间常数电路、封闭电路与电极异常检…

【OC底层_消息发送与转发机制原理】

文章目录 前言动态类型动态绑定为何为动态语言? 什么是消息传递选择子SELIMPIMP和SEL的关系 消息发送1. 快速查找objc_msgSend()的执行流程objc_msgSend()深基核心逻辑及其参数解析源码解析消息发送的快速查找总结:objc_msgSend(receiver, sel, …)对于b…

接口测试Post请求提交数据的四种类型

常见的post提交数据类型有四种: 第一种:application/json 这是最常见的json格式,也是非常友好的深受小伙伴喜欢的一种,如下 {“input1”:“xxx”,“input2”:“ooo”,“remember”:false} 第二种:application/x-www…

【MySQL实战】笔记

1、MySQL的基本架构组成 MySQL的基本架构组成包括以下几个部分: 连接器(Connection Manager):负责与客户端建立连接,并处理客户端发送的请求。连接器会验证客户端的身份、分配线程和缓存等资源,并将请求转…

pdf转excel怎么样格式不乱?这两个方法轻松转换!

PDF和Excel是广泛应用的文件格式,然而,将PDF转换为Excel时,常常面临格式混乱的问题。幸运的是,我们有记灵在线工具和Adobe Acrobat Pro软件这两个简单而有效的方法,可以帮助我们将PDF转换为Excel并保持格式整齐。本文将…