正版资源极客时间-陶辉- Nginx 核心知识 150讲
陶辉这套 Nginx 课程在圈内的口碑主要来自一点:它不把 Nginx 当成一个「配置指令字典」来讲,而是先讲清楚请求进来之后,操作系统和 Nginx 各自做了什么。150 讲的体量决定了它能把很多平时被一句「调优」带过的环节拆开看,这对需要自己排查线上问题的人是刚需。 课程的技术主线 整套内容大致
陶辉这套 Nginx 课程在圈内的口碑主要来自一点:它不把 Nginx 当成一个「配置指令字典」来讲,而是先讲清楚请求进来之后,操作系统和 Nginx 各自做了什么。150 讲的体量决定了它能把很多平时被一句「调优」带过的环节拆开看,这对需要自己排查线上问题的人是刚需。
课程的技术主线
整套内容大致沿三条线推进。第一条是网络与协议层:从 TCP 连接建立、SSL/TLS 握手过程,到证书链的公信力如何被验证,再到握手阶段 Nginx 的性能开销具体落在哪里。这部分不是泛泛而谈的安全科普,而是能对应到具体配置项和抓包现象的讲解。第二条是 Nginx 自身的架构:进程模型、事件驱动、连接与请求的处理阶段划分,理解这些之后再看 location 匹配、rewrite、upstream 才不会变成背规则。第三条是工程化配置:反向代理、缓存、负载均衡、限流、日志,以及 listen、server_name 这类看似简单实则边界很多的指令。
把 SSL 和反向代理缓存放在比较靠前的位置是有道理的——这两个场景几乎覆盖了绝大多数生产环境里 Nginx 的职责,先建立对它们的完整认知,后面再看细节指令会更容易定位到实际用途。
适合拿来对照实践的部分
这类视频课如果只看不练,很容易出现「听懂了但配不出来」的情况。比较有效的用法是跟着课程节奏在本地搭一套最小环境:一台装好 Nginx 的机器或容器,能改配置、能 reload、能看日志、能用 curl 和 openssl 验证。课程讲到 SSL 握手瓶颈时,可以用 openssl s_client 观察握手细节;讲到缓存时,可以用响应头里的缓存状态字段确认命中情况;讲到 listen 指令时,可以自己试几种写法并观察监听结果。凡是能动手验证的地方,都不要只停留在听。
反向代理与缓存那一部分尤其值得反复看。它涉及的不只是 proxy_pass 怎么写,还包括缓存键怎么设计、什么情况下不该缓存、上游返回的头部如何影响缓存行为。这些判断在真实项目里经常出问题,而有经验的讲解能帮你建立起一套判断依据,而不是照抄配置。
学习路径上的建议
- 先过一遍 Nginx 的进程模型与请求处理流程,建立整体框架,不要一上来就啃指令细节。
- 把代理和缓存作为第一阶段的重点,配套在本地复现,记录每一步的配置和验证方式。
- SSL 部分建议单独安排时间,配合抓包或 openssl 命令理解握手过程,再回头看证书与性能相关的讲解。
- 限流、日志、动态 upstream 这些偏运维的内容放在最后,此时已有前面的基础,理解成本会低很多。
- 每一讲结束后,把关键配置整理成自己的片段库,比记笔记更有复用价值。
怎么用这份资料
150 讲不适合一口气刷完。更合理的做法是按主题分块,每块结束后在自己的环境里做一次配置演练,把课程里的结论变成可验证的结果。遇到和线上环境不一致的地方,优先去查官方文档和实际抓包,而不是直接把课程里的配置搬过去——版本差异和业务差异都会影响最终行为。
这套内容更适合已经有一定 Linux 和网络基础、需要在生产环境里维护 Nginx 的开发者或运维人员。如果你目前只想知道「某个指令怎么写」,官方文档可能更快;但如果你想搞清楚「为什么这么写、出问题该往哪查」,这门课的结构和深度是能支撑起这条路径的。
极客时间-陶辉- Nginx 核心知识 150讲
深入Nginx核心,掌握高性能配置与优化
编辑点评
系统讲解Nginx配置与优化,涵盖网络原理、SSL安全、缓存机制,适合运维工程师提升技能。
⭐ 编辑推荐
极客时间陶辉主讲,150讲深入浅出,助你成为Nginx高手。
✨ 课程亮点
课程目录
001-05051 集
- 001-050文档.zip [1.8 MB]
- 14丨 从网络原理来看 SSL 安全协议.mp4 [50.4 MB]
- 16丨 SSL 证书的公信力是如何保证的?.mp4 [80.5 MB]
- 17丨 SSL 协议握手时 Nginx 的性能瓶颈在哪里?.mp4 [73.8 MB]
- 12丨 用 Nginx 搭建一个具备缓存功能的反向代理服务.mp4 [138.9 MB]
- 44丨 Listen指令的用法.mp4 [63.3 MB]
- 48丨 详解HTTP请求的11个阶段.mp4 [104.5 MB]
- 46丨 Nginx中的正则表达式.mp4 [96.6 MB]
- 35丨 Nginx如何通过连接池处理网络请求.mp4 [154.3 MB]
- 34丨 Nginx模块的分类.mp4 [14.2 MB]
- 49丨 11个阶段的顺序处理.mp4 [48.9 MB]
- 01丨 课程综述.mp4 [26.4 MB]
- 08丨 编译出适合自己的 Nginx.mp4 [221.2 MB]
- 43丨 冲突的配置指令以谁为准?.mp4 [143.2 MB]
- 39丨 哈希表的max_size与bucket_size如何配置.mp4 [74.1 MB]
- 22丨 Nginx的进程结构实例演示.mp4 [70.6 MB]
- 19丨 基于 OpenResty 用 Lua 语言实现简单服务.mp4 [149.8 MB]
- 41丨 使用动态模块来提升运维效率.mp4 [145.2 MB]
- 28丨 Nginx网络事件实例演示.mp4 [62.0 MB]
- 27丨 网络收发与Nginx事件间的对应关系.mp4 [71.7 MB]
- 03丨 Nginx 出现的历史背景.mp4 [37.6 MB]
- 33丨 Nginx的模块究竟是什么?.mp4 [96.0 MB]
- 11丨 用 Nginx 搭建一个可用的静态资源 Web 服务器.mp4 [229.9 MB]
- 06丨 Nginx 的版本发布历史.mp4 [37.6 MB]
- 42丨 第三章内容介绍.mp4 [41.5 MB]
- 15丨 对称加密与非对称加密各自的应用场景.mp4 [31.2 MB]
- 24丨 reload重载配置文件的真相.mp4 [57.1 MB]
- 45丨 处理HTTP请求头部的流程.mp4 [134.8 MB]
- 09丨 Nginx 配置文件的通用语法介绍.mp4 [60.4 MB]
- 30丨 epoll的优劣及原理.mp4 [50.9 MB]
- 38丨 用好共享内存的工具:Slab管理器.mp4 [163.1 MB]
- 20丨 Nginx的请求处理流程.mp4 [45.9 MB]
- 05丨 Nginx 的四个主要组成部分.mp4 [28.8 MB]
- 29丨 Nginx的事件驱动模型.mp4 [38.6 MB]
- 07丨 选择哪一个 Nginx 发行版本?.mp4 [42.1 MB]
- 50丨 postread阶段:获取真实客户端地址的realip模块.mp4 [159.6 MB]
- 02丨 Nginx 适用于哪些场景?.mp4 [33.2 MB]
- 31丨Nginx的请求切换.mp4 [84.3 MB]
- 36丨 内存池对性能的影响.mp4 [81.9 MB]
- 10丨 Nginx 命令行及演示:重载、热部署、日志切割.mp4 [188.8 MB]
- 40丨 Nginx中最常用的容器:红黑树.mp4 [44.5 MB]
- 37丨 所有worker进程协同工作的关键:共享内存.mp4 [74.9 MB]
- 26丨 优雅地关闭worker进程.mp4 [60.0 MB]
- 47丨 如何找到处理请求的server指令块.mp4 [138.2 MB]
- 04丨 为什么用 Nginx:它的 5 个主要优点.mp4 [50.9 MB]
- 23丨 使用信号管理Nginx的父子进程.mp4 [59.1 MB]
- 32丨 同步&异步、阻塞&非阻塞之间的区别.mp4 [86.6 MB]
- 21丨 Nginx的进程结构.mp4 [43.8 MB]
- 18丨 用免费 SSL 证书实现一个 HTTPS 站点.mp4 [93.0 MB]
- 25丨 热升级的完整流程.mp4 [59.4 MB]
- 13丨 用 GoAccess 实现可视化并实时监控 access 日志.mp4 [72.1 MB]
100-15554 集
- 100-155说明.zip [1.8 MB]
- 116丨 stream_preread模块取出SSL关键信息.mp4 [67.8 MB]
- 128丨 TCP协议的keepalive功能.mp4 [52.1 MB]
- 113丨 proxy protocol协议与realip模块.mp4 [125.4 MB]
- 121丨 如何高效使用CPU.mp4 [167.6 MB]
- 142丨 解读Nginx的核心转储文件.mp4 [155.3 MB]
- 130丨 lingering_close延迟关闭TCP连接.mp4 [83.6 MB]
- 119丨 透传IP地址的3个方案.mp4 [123.0 MB]
- 140丨 HTTP第三方模块的初始化.mp4 [161.2 MB]
- 133丨 减少磁盘读写次数.mp4 [169.8 MB]
- 108丨 open file cache提升系统性能.mp4 [126.9 MB]
- 112丨 stream四层反向代理的7个阶段及常用变量.mp4 [106.8 MB]
- 154丨 子请求的使用方法.mp4 [115.5 MB]
- 143丨 通过debug日志定位问题.mp4 [175.1 MB]
- 100丨 对客户端请求的缓存处理流程.mp4 [97.5 MB]
- 115丨 stream四层反向代理处理SSL下游流量.mp4 [197.8 MB]
- 150丨 同步且非阻塞的底层SDK:cosocket.mp4 [187.1 MB]
- 105丨 memcached反向代理的用法.mp4 [107.4 MB]
- 120丨 性能优化方法论.mp4 [72.0 MB]
- 104丨 uwsgi、fastcgi、scgi指令的对照表.mp4 [174.1 MB]
- 147丨 OpenResty中Lua与C代码交互的原理.mp4 [97.0 MB]
- 141丨 if指令是邪恶的吗?.mp4 [126.3 MB]
- 135丨 用tcmalloc优化内存分配.mp4 [104.4 MB]
- 101丨 接收上游响应的缓存处理流程.mp4 [71.5 MB]
- 118丨 UDP反向代理.mp4 [103.0 MB]
- 149丨 工具类型的SDK.mp4 [47.0 MB]
- 123丨 控制TCP三次握手参数.mp4 [119.3 MB]
- 103丨 及时清除缓存.mp4 [84.0 MB]
- 129丨 减少关闭连接时的time_wait端口数量.mp4 [137.4 MB]
- 146丨 如何在Nginx中嵌入Lua代码.mp4 [147.5 MB]
- 124丨 建立TCP连接的优化.mp4 [190.2 MB]
- 131丨 应用层协议的优化.mp4 [148.6 MB]
- 122丨 多核间的负载均衡.mp4 [137.7 MB]
- 117丨 stream proxy四层反向代理的用法.mp4 [206.5 MB]
- 138丨 第三方模块源码的阅读.mp4 [112.4 MB]
- 111丨 grpc反向代理.mp4 [106.5 MB]
- 127丨 慢启动与拥塞窗口.mp4 [108.8 MB]
- 148丨 获取、修改请求与响应的SDK.mp4 [144.4 MB]
- 137丨 使用stub_status模块监控Nginx的状态.mp4 [152.1 MB]
- 114丨 限并发连接、限IP、记日志.mp4 [111.3 MB]
- 139丨 Nginx的启动流程.mp4 [103.0 MB]
- 107丨 用分片提升缓存效率.mp4 [90.2 MB]
- 152丨 定时器及时间相关的SDK.mp4 [105.3 MB]
- 125丨 滑动窗口与缓冲区.mp4 [148.8 MB]
- 110丨 搭建http2服务并推送资源.mp4 [105.1 MB]
- 134丨 零拷贝与gzip_static模块.mp4 [100.3 MB]
- 126丨 优化缓冲区与传输效率.mp4 [138.7 MB]
- 155丨 基于OpenResty的WAF防火墙.mp4 [31.9 MB]
- 151丨 基于协程的并发编程SDK.mp4 [153.6 MB]
- 132丨 磁盘IO的优化.mp4 [136.6 MB]
- 106丨 搭建websocket反向代理.mp4 [128.4 MB]
- 102丨 如何减轻缓存失效时上游服务的压力.mp4 [127.5 MB]
- 136丨 使用Google PerfTools分析Nginx.mp4 [142.1 MB]
- 145丨 OpenResty中的Nginx模块与Lua模块.mp4 [156.8 MB]
051-09950 集
- 051-099必看.zip [1.8 MB]
- 70丨 用过滤模块更改响应中的字符串:sub模块.mp4 [88.1 MB]
- 92丨 与上游服务建立连接.mp4 [98.6 MB]
- 84丨 负载均衡哈希算法:ip_hash与hash模块.mp4 [124.4 MB]
- 66丨 index和autoindex模块的用法.mp4 [67.9 MB]
- 88丨 http反向代理proxy处理请求的流程.mp4 [106.7 MB]
- 69丨 HTTP过滤模块的调用流程.mp4 [85.8 MB]
- 97丨 用好浏览器的缓存.mp4 [139.4 MB]
- 91丨 接收用户请求包体的方式.mp4 [114.6 MB]
- 71丨 用过滤模块在http响应的前后添加内容:addition模块.mp4 [47.3 MB]
- 72丨 Nginx变量的运行原理.mp4 [114.3 MB]
- 68丨 access日志的详细用法.mp4 [88.9 MB]
- 67丨 提升多个小文件性能的concat模块.mp4 [65.9 MB]
- 60丨 access阶段的satisfy指令.mp4 [80.9 MB]
- 54丨 find_config阶段:找到处理请求的location指令块.mp4 [127.0 MB]
- 63丨 content阶段:详解root和alias指令.mp4 [66.3 MB]
- 57丨 access阶段:对ip做限制的access模块.mp4 [36.7 MB]
- 51丨 rewrite阶段的rewrite模块:return指令.mp4 [115.9 MB]
- 89丨 proxy模块中的proxy_pass指令.mp4 [84.3 MB]
- 75丨 使用变量防盗链的referer模块.mp4 [122.7 MB]
- 96丨 对上游使用SSL连接.mp4 [245.4 MB]
- 78丨 通过变量指定少量用户实现AB测试:split_client模块.mp4 [116.3 MB]
- 83丨 负载均衡策略:round-robin.mp4 [155.5 MB]
- 77丨 为复杂的业务生成新的变量:map模块.mp4 [106.5 MB]
- 87丨 http upstream模块提供的变量.mp4 [71.0 MB]
- 86丨 最少连接算法以及如何跨worker进程生效.mp4 [52.4 MB]
- 65丨 static模块对url不以斜杠结尾却访问目录的做法.mp4 [79.4 MB]
- 58丨 access阶段:对用户名密码做限制的auth_basic模块.mp4 [84.4 MB]
- 82丨 反向代理与负载均衡原理.mp4 [95.6 MB]
- 79丨 根据IP地址范围的匹配生成新变量:geo模块.mp4 [71.9 MB]
- 62丨 实时拷贝流量:precontent阶段的mirror模块.mp4 [55.9 MB]
- 98丨 Nginx决策浏览器过期缓存是否有效.mp4 [103.3 MB]
- 53丨 rewrite阶段的rewrite模块:条件判断.mp4 [53.6 MB]
- 90丨 根据指令修改发往上游的请求.mp4 [104.5 MB]
- 94丨 处理上游的响应头部.mp4 [198.5 MB]
- 81丨 对客户端使用keepalive提升连接效率.mp4 [119.6 MB]
- 95丨 上游出现失败时的容错方案.mp4 [185.6 MB]
- 99丨 缓存的基本用法.mp4 [233.3 MB]
- 59丨 access阶段:使用第三方做权限控制的auth_request模块.mp4 [76.9 MB]
- 85丨 一致性哈希算法:hash模块.mp4 [80.1 MB]
- 55丨 preaccess阶段:对连接做限制的limit_conn模块.mp4 [108.6 MB]
- 76丨 使用变量实现防盗链功能实践:secure_link模块.mp4 [217.7 MB]
- 80丨 使用变量获得用户的地理位置:geoip模块.mp4 [129.6 MB]
- 93丨 接收上游的响应.mp4 [138.9 MB]
- 73丨 HTTP框架提供的请求相关的变量.mp4 [134.5 MB]
- 52丨 rewrite阶段的rewrite模块:重写URL.mp4 [114.8 MB]
- 74丨 HTTP框架提供的其他变量.mp4 [93.5 MB]
- 56丨 preaccess阶段:对请求做限制的limit_req模块.mp4 [128.4 MB]
- 64丨 static模块提供的3个变量.mp4 [59.4 MB]
- 61丨 precontent阶段:按序访问资源的try_files模块.mp4 [52.9 MB]
适合人群
- Nginx运维工程师
- 网站性能优化人员
- 系统管理员
🎯 学习收获
- 掌握Nginx配置与优化技巧
- 提升网站性能与安全性
- 成为Nginx高手
🎉 祝您学习愉快!




