Nginx的优化与防盗链(一)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 1、隐藏版本号2、修改用户与组3、缓存时间4、日志切割5、连接超时6、更改进程数7、配置网页压缩8、配置防盗链9、fpm参数优化

1、隐藏版本号:


可以使用 Fiddler 工具抓取数据包,查看 Nginx版本,也可以在 CentOS 中使用命令 curl -I http://20.0.0.17示响应报文首部信息。

curl -I http://20.0.0.20

f1.png

方法一:修改配置文件:

vim /usr/local/nginx/conf/nginx.conf
http {
    include       mime.types;
    default_type  application/octet-stream;
    server_tokens off;                              #添加,关闭版本号
    ......
}
systemctl restart nginx
curl -I http://20.0.0.20

f2.pngf3.png


方法二:修改源码文件,重新编译安装:

vim /opt/nginx-1.12.0/src/core/nginx.h
#define NGINX_VERSION "1.1.1"                   #修改版本号
#define NGINX_VER "IIS" NGINX_VERSION           #修改服务器类型
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://20.0.0.17


f4.pngf5.pngf6.pngf7.png

f8.png


2、修改用户组:


vim /usr/local/nginx/conf/nginx.conf
user nginx nginx;                               #取消注释,修改用户为 nginx ,组为 nginx
systemctl restart nginx
ps aux | grep nginx
主进程由root创建,子进程由nginx创建


f9.pngf10.png


3、缓存时间:


vim /usr/local/nginx/conf/nginx.conf
http {
......
    server {
    ......
        location / {
            root html;
            index index.html index.htm;
        }
        location ~ \.(gif|jpg|jepg|png|bmp|ico)$ {      #加入新的 location,以图片作为缓存对象
            root html;
            expires 1d;                                 #指定缓存时间,1天
        }
......
    }
}


systemctl restart nginx


4、日志切割:


vim /fenge.sh
#!/bin/bash
d=$(date -d "-1 day" "+%Y%m%d")                 #显示前一天的时间
logs_path="/var/log/nginx"
pid_path=`cat /usr/local/nginx/logs/nginx.pid`
[ -d $logs_path ] || mkdir -p $logs_path        #创建日志文件目录
#移动并重命名日志文件
mv /usr/local/nginx/logs/access.log ${logs_path}/kgc.com-access.log-{$d}
#重建日志文件
kill -USR1 $pid_path
#删除30天前的日志文件                  
find $logs_path -mtime +30 -exec rm -rf {} \;
#find $logs_path -mtime +30 |xargs rm -rf


f11.png


source fenge.sh
ls /var/log/nginx
ls /usr/local/nginx/logs/access.log

f12.png

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
18天前
|
负载均衡 前端开发 应用服务中间件
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
39 3
|
2月前
|
缓存 前端开发 JavaScript
|
2月前
|
缓存 监控 负载均衡
nginx相关配置及高并发优化
Nginx的高并发优化是一个综合性的过程,需要根据具体的业务场景和硬件资源量身定制。以上配置只是基础,实际应用中还需根据服务器监控数据进行持续调整和优化。例如,利用工具如ab(Apache Benchmarks)进行压力测试,监控CPU、内存、网络和磁盘I/O等资源使用情况,确保配置的有效性和服务的稳定性。
150 0
|
4月前
|
负载均衡 应用服务中间件 网络安全
Django后端架构开发:Nginx服务优化实践
Django后端架构开发:Nginx服务优化实践
67 2
|
4月前
|
缓存 前端开发 Java
"揭秘!SpringBoot携手Nginx,性能飙升秘籍大公开:轻松掌握配置优化,让你的应用快如闪电!"
【8月更文挑战第11天】随着微服务架构的发展,SpringBoot成为构建RESTful API的首选,Nginx则作为高性能的反向代理服务器提升应用性能。本文将探讨两者如何协同工作,包括Nginx的负载均衡策略、静态资源缓存及数据压缩配置;同时讨论SpringBoot的线程池优化、缓存策略及性能监控。通过这些方法,帮助开发者显著提高系统的整体性能和可用性。
190 1
|
5月前
|
缓存 负载均衡 应用服务中间件
Nginx反向代理优化
教你如何做好Nginx反向代理优化
113 5
|
6月前
|
监控 前端开发 应用服务中间件
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽(2)
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽
92 1
|
6月前
|
负载均衡 前端开发 应用服务中间件
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽(1)
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽
208 1
|
7月前
|
缓存 负载均衡 安全
深入探索Nginx高性能Web服务器配置与优化
【5月更文挑战第7天】本文深入探讨了Nginx的配置与优化,重点介绍了基础配置参数如`worker_processes`、`worker_connections`和`keepalive_timeout`,以及优化策略,包括使用epoll事件驱动模型、开启gzip压缩、启用缓存、负载均衡和安全配置。此外,还提到了性能调优工具,如ab、nginx-stats和nmon,以助于提升Nginx的性能和稳定性。
|
7月前
|
缓存 应用服务中间件 网络安全
nginx 重写功能,防盗链功能 介绍
nginx 重写功能,防盗链功能 介绍