nginx的优化和防盗链

nginx的优化

1、隐藏版本号

bug多,更新版本速度块,一旦版本号暴露出去,有可能给对方提供攻击的漏洞。

法一隐藏:【在http大模块中修改,不在server中,也不是location】

cd /usr/local/nginx/

ls

cd conf/

ls

vim /nginx.conf/

server_tokens off;

:wq!

nginx -t

systemctl restart nginx

法二隐藏:【修改源码文件,重新编译安装】

在源码包里修改配置文件

修改完之后重新配置,编译安装

隐藏版本号打开

cd /opt/

ls

cd nginx-1.22.0/

ls

cd src/

ls

cd core/

ls

vim nginx.h

(13、14行进行修改,内容随意)

:wq!

cd ..

ls

cd /usr/local/nginx/conf/

ls

vim nginx.conf

server_tokens on;

:wq!

systemctl restart nginx

2、nginx日志分割

nginx没有自带的日志分割功能,靠人工通过脚本实现日志分割

vim nginxlog.sh

3、网页压缩

http_gzip_static_module 可以对文件内容和图片进行压缩的功能,节约宽带,提升用户的访问速度

vim nginx.conf

4、设置nginx的图片缓存时间

可以在日后访问时,不需要经常向后台请求数据,加快访问速度

一般是针对静态页面,动态不设置

5、连接超时

一般设置60-120s

body,不是boby

6、nginx的并发设置

在高并发的场景下,需要nginx启动更多的进程来保证快速响应

CPU 根据CPU的核心数调整工作进程

一般是CPU核数的一半【上限最多8个,大于8个不会对性能有所提升,甚至会降低稳定性】【一般四个】

查看CPU核数

或者

Q:

A:

8个以上性能降低:

面试:把进程绑定到CPU上

A:

面试:time_wait大量出现,该如何优化?

答:改内核文件

ime_wait是tcp连接状态中的一种,不是报错。出现在四次挥手之后

在time_wait状态下,tcp处于连接等待状态,等待有一个持续时间,http1.1的会话保持

1、确保可靠的关闭连接

2、避免连接复用

他在连接正常关闭之,一段时间之后会自动消失,而且占用的资源很少,对服务器性能的影响有限

nginx的内置变量:打印结果

$remote_addr 客户端的IP地址

&remote_port 显示客户端的端口号

$uri 显示请求的URI

$host 显示请求的主机名

$request_method 显示请求的方法

重要的变量配置

peoxy_set_header X-Forward $remote_addr

代理服务器设置这个变量,客户端的真实IP要发送给后端,否则代理服务器的地址会被拉入黑名单

proxy_set_header X-Real-IP 4remote_addr

客户端的真实IP,发送给后端,现在所有的网站都会要求客户端在请求时加上真实IP

防盗链

大部分:

相关推荐
YuMiao2 小时前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
闲云一鹤20 小时前
nginx 快速入门教程 - 写给前端的你
前端·nginx·前端工程化
Sinclair3 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
Rockbean4 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
茶杯梦轩4 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
何中应4 天前
Nginx转发请求错误
前端·后端·nginx
海天鹰5 天前
【免费】PHP主机=域名+解析+主机
服务器
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅5 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑