nignx cache 部分参数说明

本文详细介绍了 Nginx 中代理缓存的配置方法,包括缓存名称、缓存锁、缓存有效时间等关键参数设置,并提供了具体的路径及缓存分区配置示例。

proxy_cache cache_one; #设置缓存去名称
proxy_cache_lock on; #多线程同时写一个缓存文件是,需要上锁
proxy_cache_lock_timeout 5s; #上锁超时5s,超时后将不缓存后端服务器response结果

proxy_cache_methods GET HEAD POST;#开启缓存份的方式

proxy_cache_min_uses 1; #最少被访问一次后就被缓存到本地

proxy_cache_valid any 0; #为不同的应答设置不同的缓存时间

proxy_cache_use_stale timeout; #后端服务器超时,是用上次缓存数据

proxy_temp_path /data/nginx/temp;

proxy_cache_path /data/nginx/cache levels=1:1:2 keys_zone=cache_one:2048m inactive=2h max_size=500g;

proxy_cache_path /data/nginx/cache/one levels=1 keys_zone=one:10m;

proxy_cache_path /data/nginx/cache/two levels=2:2 keys_zone=two:100m;

proxy_cache_path /data/nginx/cache/three levels=1:1:2 keys_zone=three:1000m;

levels 分3成目录 /data/nginx/cache/c/9/02/b7f54b2df7773722d382f4809d65029c
#keys_zone={proxy_cache 设置的缓存区} :大小
#inactive=2h,两个小时没有访问就上次缓存文件
#max_size=500g 缓存区分配最大500g

<think> 嗯,用户想要了解Nginx文件配置的详细解释,正好之前有三个相关引用可以整合。用户可能是运维人员或开发者,正在搭建或调试Nginx服务,需要系统性的配置指导。考虑到引用里提到了配置文件层级结构和实战示例,应该着重解释清楚配置文件的模块化设计这个核心特点。 从引用内容看,[^3]提供了最基础的配置文件结构分层,适合作为回答主干;[^2]补充了关键配置文件的功能说明;[^1]则强调模块化设计的优势。需要特别注意把五个配置层级(全局/事件/HTTP/服务器/位置)的关系讲透,这是理解Nginx配置逻辑的关键。 用户没提具体应用场景,但配置示例应该覆盖最常用的反向代理和静态资源服务场景,这样实用性强。对于location块的匹配规则这种容易出错的部分,要给出明确示例和警告说明。最后相关问题设计成阶梯式:从基本结构到调试技巧再到性能优化,引导用户深入。 </think> 以下是Nginx配置文件结构的详细解析,结合核心层级和实战示例: ### 一、配置文件层级结构(嵌套设计) ```nginx # 1. 全局配置层(Main Context)[^3] user nginx; # 运行用户 worker_processes auto; # 工作进程数(auto=自动匹配CPU核心) error_log /var/log/nginx/error.log; # 全局错误日志 # 2. 事件配置层(Events Context)[^3] events { worker_connections 1024; # 单个进程最大连接数 use epoll; # 高效事件模型(Linux) } # 3. HTTP配置层(HTTP Context)[^3] http { include /etc/nginx/mime.types; # 载入MIME类型映射[^2] # 4. 服务器配置层(Server Context)[^3] server { listen 80; # 监听端口 server_name example.com; # 域名 # 5. 位置配置层(Location Context)[^3] location / { root /var/www/html; # 网站根目录 index index.html; # 默认首页 } location /api/ { proxy_pass http://backend; # 反向代理到后端服务 } } } ``` ### 二、关键配置文件说明[^2] | 配置文件 | 作用 | |---------------|--------------------------------| | `nginx.conf` | 主配置文件,包含全局和HTTP配置 | | `mime.types` | 定义文件扩展名与MIME类型的映射 | | `fastcgi.conf`| FastCGI进程相关参数 | | `sites.conf` | 多站点配置(推荐拆分配置) | ### 三、核心配置指令详解 1. **反向代理示例**(处理API请求) ```nginx location /api/ { proxy_set_header Host $host; # 传递原始域名 proxy_set_header X-Real-IP $remote_addr; # 传递客户端IP proxy_pass http://127.0.0.1:8080; # 转发到本机8080端口 } ``` 2. **静态资源缓存优化** ```nginx location ~* \.(jpg|css|js)$ { expires 30d; # 客户端缓存30天 add_header Cache-Control "public"; access_log off; # 关闭访问日志 } ``` 3. **负载均衡配置** ```nginx upstream backend { server 192.168.1.10 weight=3; # 权重3 server 192.168.1.11; # 默认权重1 keepalive 32; # 保持长连接数 } ``` ### 四、调试技巧 - 语法检查:`nginx -t` - 热重载配置:`nginx -s reload` - 查看实际生效配置:`nginx -T` > ⚠️ 警告:`location` 匹配优先级规则 > `= /path`(精确匹配) > `^~ /path`(前缀匹配) > `~* \.jpg$`(正则匹配) > `/uri`(普通前缀匹配)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值