nginx的优化

nginx的优化

经验文章nimo972025-06-15 19:31:551A+A-

安全配置相关

1.设置隐藏nginx的版本信息

server_token off;

2.nginx文件的上传限制

client_max_body_size 设置大小

3.nginx的防盗链设置

1.通过页面加水印的方法

2.通过会话的验证进行设置(cookie,session会话验证等)

3.配置对应的valid_referers

valid_referers指令指定了允许访问的来源,none表示没有Referer头时允许,blocked表示禁止所有来自没有Referer头的请求,example.com和*.example.com表示允许从example.com及其子域访问。

4.防爬虫配置(user agent)

server {
    listen 80;
    server_name example.com;

    set $blocked 0;
    
    # 检查 User-Agent 是否包含常见爬虫关键字
    if ($http_user_agent ~* (googlebot|bingbot|slurp|baidu|yandex)) {
        set $blocked 1;
    }
    
    # 如果是爬虫,返回403
    if ($blocked) {
        return 403 "Forbidden: Bot access detected.";
    }
    
    # 其他配置...
}

文件一般设置为 644 目录755等 上传的目录改为nginx的用户

5.以nginx的用户权限配置启动nginx(有端口的限制 系统端口必须使用)

6.限制并发访问(# 定义连接限制区域,限制每个 IP 地址最多同时连接 1 个请求

limit_conn_zone $binary_remote_addr zone=addr:10m;)

limit_req_zone $binary_remote_addr zone=req_limit_per_ip:10m rate=1r/s; # 定义请求限制区域,限制每个 IP 地址每秒最多 1 次请求

性能配置优化

1.worker_processes auto; ,Nginx 将会自动检测机器上的 CPU 核心数,并根据核心数决定启动多少个工作进程

2.multi_accept on; 工作进程会在收到新连接通知后,尽可能地一次性接受所有待处理的连接

高并发建议开启

3.client_body_buffer_size

  • 作用: 设置用于读取客户端请求主体的缓冲区大小。

4.日志切割(logrotate)



点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7