Nginx服务优化与防盗链配置

一.优化Nginx的相关措施

1.优化网页访问速度

(1)在可重启状态下,为避免同一客户端长时间占用连接,造成资源浪费,可以在http段设置连接超时参数keepalived_timeout实现控制连接访问时间

(2)当网页数据返回给客户端后,可针对静态网页设置缓存时间,在配置文件内的http段内server段添加location,更改字段expires 1d来实现:避免重复请求,加快访问速度

(3)配置状态页,用于输出Nginx基本状态信息

(4)在配置文件中gzip模块加入相应压缩功能参数,节约网站带宽,提升用户访问体验

(5)调试worker进程打开的文件个数(提前修改pam认证文件)

(6)提高PHP解析速度,根据服务器内存与负载进行FPM模块参数调整,例如增加dynamic(动态)方式产生fpm进程

(7)开启多进程,配置worker_processes auto

(8)使用nice设置work_priority修改work进程优先级

(9)长连接,一次连接,多次传输

(10)修改events模块

events {
worker_connections 65536;        #设置单个工作进程最大并发连接数
use epoll;                       #使用epoll事件驱动
accept_mutex on;                 #同一时刻一个请求轮流由work进程处理,轮询,防止“惊群”会卡
multi_accept on;                 #每个工作进程同时接受多个网络连接
}

2.优化服务器安全性

(1)隐藏版本号,避免安全漏洞泄露,通过http段内添加server_tokens off 或修改源码

(2)需有用户与组的支持,实现对网站文件读取时进行访问控制,编译时指定用户与组(即修改./configure后指定)或修改配置文件

(3)进行日志分割(USR1),掌握运行状态,可以通过写脚本完成

(4)设置防盗链,防止别人直接从网站引用链接,消耗资源与流量

二.查看和隐藏版本号

1.查看版本号

curl -I http://192.168.79.28
#查看信息(版本号等)

2.隐藏版本号

(1)修改文件配置

#修改配置文件
vim /usr/local/nginx/conf/nginx.conf
------------------------------------------------------
http {include       mime.types;default_type  application/octet-stream;server_tokens off;					#添加,关闭版本号---------------------------------------------------#检查语法问题
nginx -t #重启服务
systemctl restart nginx #查看版本号是否被隐藏
curl -I http://192.168.79.28 

(2)修改源代码,重新编译安装

#修改源码文件
vim /opt/nginx-1.12.0/src/core/nginx.h
#define NGINX_VERSION "1.1.1" 					#修改版本号 将1.12.0版本改为1.1.1
#define NGINX_VER "IIS" NGINX_VERSION 			#修改服务器类型 将nginx改为IIS#重新配置安装
cd /opt/nginx-1.12.0/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module     
make && make install#修改配置文件
vim /usr/local/nginx/conf/nginx.conf
http {include       mime.types;default_type  application/octet-stream;server_tokens on;           #将版本号打开#验证
systemctl restart nginx   #重启服务
curl -I http://192.168.79.28  #查看服务名称

本章优化措施在编译安装情况下请注意使用nginx -V命令查看后更改路径!

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

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

相关文章

【架构笔记1】剃刀思维-如无必要,勿增实体

欢迎来到文思源想的架构空间,前段时间博主做了一个工作经历复盘,10年开发路,走了不少弯路,也算积累了不少软件开发、架构设计的经验和心得,确实有必要好好盘一盘,作为个人的总结,同时也留给有缘…

哪个牌子的电视盒子好用?2024超强电视盒子排名

最近很多朋友问我电视盒子的相关问题,就目前来说,电视盒子的地位依然是不可取代的。我近来要发布的测评内容是哪个牌子的电视盒子好用,耗时两周进行对比后整理了电视盒子排名,看看哪些电视盒子是最值得入手的吧。 NO.1——泰捷新品…

milvus upsert流程源码分析

milvus版本:v2.3.2 整体架构: Upsert 的数据流向: 1.客户端sdk发出Upsert API请求。 import numpy as np from pymilvus import (connections,Collection, )num_entities, dim 4, 3print("start connecting to Milvus") connections.connect("default",…

AD9851——FPGA调试(并行模式)

AD9851——FPGA调试(并行模式) 工程功能:使用FPGA来调试AD9851芯片,使用的是并行模式 芯片手册:AD9851 CMOS 180 MHz DDS/DAC Synthesizer Data Sheet (Rev. D) (analog.com) 管脚功能 管脚名称管脚功能D0-D78位数据输…

水库安全监测方案(福建地区水库安全监测案例分享)

我司星创易联最近在福建省受到了一个水库安全监测系统项目的委托。该水库位于福建中部山区,作为该地区的重要防洪与供水工程,对下游数十万人的生活产生重大影响。但是因为水库附近地质情况复杂,水库大坝在多次洪水冲击下出现一定病害,亟须全面加强对水库大坝安全状况的监测,以确…

Rocky Linux 运维工具yum

一、yum的简介 ​​yum​是用于在基于RPM包管理系统的包管理工具。用户可以通过 ​yum​来搜索、安装、更新和删除软件包,自动处理依赖关系,方便快捷地管理系统上的软件。 二、yum的参数说明 1、install 用于在系统的上安装一个或多个软件包 2、seach 用…

常用git 打tag命令

1.查看所有tag git tag 2.创建 v5.0.0的tag git tag v5.0.0 git tag (创建后查看) 3.推送到远程tag git push origin v5.0.0 4.删除远程tag git push origin --delete v5.0.0 5.删除本地tag git tag -d v5.0.0 6.添加带有备注信息的tag git tag v5.…

golang学习5,glang的web的restful接口

1. //返回json r.GET("/getJson", controller.GetUserInfo) package mainimport (/*"net/http"*/"gin/src/main/controller""github.com/gin-gonic/gin" )func main() {r : gin.Default()r.GET("/get", func(ctx *…

Oracle中序列

1. Sequence 定义 在Oracle中可以用SEQUENCE生成自增字段。Sequence序列是Oracle中用于生成数字序列的对象,可以创建一个唯一的数字作为主键。 2. 为什么要用 Sequence 你可能有疑问为什么要使用序列? 不能使用一个存储主键的表并每次递增吗&#xf…

golang使用gorm操作mysql1

1.mysql连接配置 package daoimport ("fmt""gorm.io/driver/mysql""gorm.io/gorm""gorm.io/gorm/logger" )var DB *gorm.DB// 连接数据库,启动服务的时候,init方法就会执行 func init() {username : "roo…

【virtual Box】功能速通:安装 Windows 和 Ubuntu

文章目录 一、虚拟机1.1 概述1.2 virtual box概述 二、新建虚拟机、删除、注册三、虚拟机内部设置3.1 安装增强功能驱动3.2 分辨率问题3.3 网络链接方式 一、虚拟机 1.1 概述 虚拟机(Virtual Machine,VM)是一种软件实现的计算机系统&#x…

EMR StarRocks实战——Mysql数据实时同步到SR

文章摘抄阿里云EMR上的StarRocks实践:《基于实时计算Flink使用CTAS&CDAS功能同步MySQL数据至StarRocks》 前言 CTAS可以实现单表的结构和数据同步,CDAS可以实现整库同步或者同一库中的多表结构和数据同步。下文主要介绍如何使用Flink平台和E-MapRed…