核心特性
- 典型的静态服务器,可做反向代理、负载均衡
- 一般放在最前面直面用户,和后端打配合
- 纯C写的,性能贼高、内存消耗极少、稳定性也相当好,互联网公司重度使用
在Web架构中的位置
- 总入口角色:nginx作为所有用户请求的第一道门,统一处理前端和后端的访问
- 双重职责:既管理静态资源的返回,也负责API的转发
- 统一域名:让前后端共用一个域名和端口,简化开发和部署
典型请求流程
- 用户访问网站:输入域名后,请求先到达nginx
- 如果是静态资源(HTML、CSS、JS),nginx直接从服务器本地目录读取并返回
- 用户看到前端页面
- 前端交互调用接口:用户操作触发数据请求(如
/api/getData)
- nginx通过配置识别这是后端接口请求(通过URL中包含
/api 判断)
- 将请求反向代理到后端服务(如
127.0.0.1:8080)
- 后端处理并返回:后端服务处理完请求后,把结果返回给nginx,再由nginx转发给前端
定位与选择
- nginx相对来说可以算比较轻量级的代理服务器
- 更成熟更重量级的可以用云平台的网关服务
- nginx本质是一个代理服务器,只负责流量转发,不处理业务逻辑
使用指南