nginx的优化

目录

一 隐藏版本号在网页上面有nginx的版本号会让别人攻击你的服务器

二 nginx的优化之日志分割

三 nginx的优化之页面压缩

四 连接超时

五 nginx的并发设置

 七总结:nginx的优化


一 隐藏版本号在网页上面有nginx的版本号会让别人攻击你的服务器

如图所示

 第一种方法是关闭版本号的显示改配置文件

 重启nginx

systemctl restart nginx

 版本号就被隐藏起来了

第二种方法修改源码文件自定义版本号后打开隐藏的版本号(仅限于编译安装)

 重新编译安装

./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module

make && make install

进入nginx的配置文件中把版本号打开 修改完重启服务

 之后打开浏览器版本号就变成这样了

二 nginx的优化之日志分割

 本身不带日志分割所有的日志分割都是以shell脚本来分割的

#!/bin/bash
d=$(date +%Y-%M-%d)  #获取年月日

dir="/usr/local/nginx/logs/"   #获取日志的路径

logs_file='/usr/local/nginx/logs/access.log' #定义需要分割的日志文件

logs_error='/usr/local/nginx/logs/error.log'
pid_file='/usr/local/nginx/logs/nginx.pid'  #定义nginx服务的pid文件
if [ ! -d $dir ]  #如果存放日志的目录不存在
  then
    mkdir $dir   #则创建日志目录
fi
mv ${logs_file} ${dir}/access_${d}.log #发送信号.给nginx主程序,让nginx生成新的日志文件

mv ${logs_error} ${dir}/error_${d}.log
kill -USER $(cat ${pid_file}) 

find $dir -mtime +30 -exec rm -rf {} \;  # 日志文件的清理,把三十天前的日志直接清除

授权并执行

 chmod 777 nginxlog.sh

./nginxlog.sh

 日志生成这两个文件代表成功

还需要设定时任务

croutab -e -u root

 

三 nginx的优化之页面压缩

nginx页面压缩 需要http中的gzip_module模块所提供的功能默认是注释掉的

gzip_min_length 1k;最小的压缩文件,小于1k就不再压缩了

gzip_buffers 4 64k; 压缩的缓冲区,4个64k缓冲区

gzip_http_version 1.1; 压缩版本,默认为1.1

gzip_comp_level 6; 压缩级别1-9不大不小,不快不慢正好

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;

 完成后nginx -t检查有没有错误  在重启nginx服务

在打开网页进行验证

 图片缓存 避免重复访问,导致速度变慢,加快访问时间只针对静态页面,动态页面不设置缓存时间

完成之后ngint -t 在重启服务

在打开浏览器访问

四 连接超时

tttp :keepalive模式就是缓存时间 web服务器处理完一个请求之后保持tcp连接的时间 

keepalive一直保持打开状态会占用资源  一般都是设置的60s

五 nginx的并发设置

高并发保证快速相应,处理用户请求,避免阻塞

nginx工作的核心数要是服务器的核心数的两倍或者一致

最多给到八个,超过八个性能不在提升,会降低稳定性

六 防盗链防止别人盗用你的图片

进入主服务器中的nginx中conf中修改配置文件

进入主服务器的html文件进行设置

 把这张图片放在index.html中就不要输入后缀就可以识别图片了

 主配置文件改完了下面改模拟盗的服务器

改配置文件

进入盗服务器中nginx中的html配置文件中

vim nginx.html

 

在修改nginx'的conf置文件中

cd /etc/nginx/conf.d    yum安装在这里  编译安装在 /usr/local/nginx/conf下

 配置文件都改完了 还需要在/etc/hosts里面配地址映射

 

 

 实验  先进入主服务器中访问看图片正不正常

 图片获取成功

在进去盗服务器中

 盗图设置成功

nginx的优化
1.隐藏版本号1.关闭版本号的显示2.修改源码文件自定义版本号后打开隐藏版本号的功能(仅限于编译安装)
2.日志的分割  按天数分割定时删除
3.nginx的页面压缩目的节约带宽,提高访问的速度针对静态页面 图片缓存
4.连接超时一般60s
5.nginx的并发设置 核心数的两倍最多不超过八个 指定工作的内核编号
6.防盗链防止别人盗用网站的图片

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构与算法——数据结构有哪些,常用数据结构详解

数据结构是学习数据存储方式的一门学科,那么,数据存储方式有哪几种呢?下面将对数据结构的学习内容做一个简要的总结。 数据结构大致包含以下几种存储结构: 线性表,还可细分为顺序表、链表、栈和队列;树结…

C# 依赖倒置原则(DIP)

目录 一,引子 1.1 传统的程序架构 1.2 依赖倒置 1.3 依赖倒置的作用 二,依赖注入 一,引子 1.1 传统的程序架构 在程序执行过程中,传统的程序架构如图: 可以看到,在传统的三层架构中,层与…

CRC Principle and Implementation Method(Java C)

CRC原理和程序实现方法1_哔哩哔哩_bilibili 其实原理很简单 但是我想了两个小时。。 收获的是原来一些复杂的运算都可以通过位运算来实现。 实现思路 public class CRC16Calculator {public static String CRC16(byte[] bytes) {int CRC 0x0000ffff;int POLYNOMIAL 0x0000a…

sklearn.preprocessing模块介绍

数据预处理 Binarizer: 二值化 用于将数值特征二值化。它将特征值与给定的阈值进行比较,并将特征值转换为布尔值(0 或 1),取决于特征值是否超过阈值 Binarizer(*, threshold0.0, copyTrue)参数: threshold&#xf…

day1-二分查找

二分查找 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 示例 1: 输入: nums [-1,0,3,5,9,12], target 9 输出: 4 解…

Redis实战案例14-分布式锁的基本原理、不同实现方法对比以及基于Redis进行实现思路

1. 分布式锁基本原理 基于数据库的分布式锁:这种方式使用数据库的特性来实现分布式锁。具体流程如下: 获取锁:当一个节点需要获得锁时,它尝试在数据库中插入一个特定的唯一键值(如唯一约束的主键)&#xff…

优化chatGPT提示词的Prompts

你扮演一个专业的chatGPT提示词工程师,我将为您提供我的提示词,它用三个反引号分隔,请根据openai发布的提示词标准和优化技巧,改进和优化我的提示词,让chatGPT能够更好的理解。 我的第一个提示词是:“”“……

【Java基础】CAS (Compare And Swap) 操作

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、使用场景四、原理五、优劣5.1 缺点&#xff1…

git merge 与 git rebase 的区别

文章目录 前言1、使用 merge2、使用 rebase总结 前言 首先我们要清楚,git merge 与 git rebase 处理的问题是一样的,这两个命令都用于把一个分支的变更整合进另一个分支,只不过他们达成同样目的的方式不同。 刚开始,已经存在一…

你不会还不知道什么是企业博客吧?

企业博客是指由企业或组织创建的在线平台,主要是用于发布与其业务、产品、行业和相关主题相关的文章、信息和观点。通过企业博客可以实现促进品牌推广、客户培养和业务发展等,对于企业发展有极其重要的作用。 企业博客的目的 1.提供有关企业产品和服务的…

vscode解决本地浏览器运行项目时的跨域问题-Live server

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 总结 最近在用face-api.js开发前端的实时人脸识别,加载已经训练好的tf模型,这一步需要加载模型json文件,但是本地测试的时候控制…

812. 打印数字

链接: 812. 打印数字 - AcWing题库 题目: 输入一个长度为 nn 的数组 aa 和一个整数 sizesize,请你编写一个函数, void print(int a[], int size), 打印数组 aa 中的前 sizesize 个数。 输入格式 第一行包含两个整数 nn 和 sizesize。 第二行包…