为 nginx 提供图形化网页界面,无需手动编辑配置文件即可管理虚拟主机、代理、SSL 证书和流转发。
- Star
- 17,239
- Fork
- 2,973
- 未关闭 Issue
- 256
- 最近提交
- 4天前
这是什么?
Apache APISIX 是一款 API 网关,既处理客户端进入服务的南北向流量,也处理服务之间的东西向流量。它基于 NGINX 和 etcd 构建,路由、上游、证书和插件都可以通过 REST Admin API 在运行时修改,无需重启进程。它也可以作为 Kubernetes Ingress Controller 使用。
项目提供负载均衡、健康检查、金丝雀发布、流量切分、熔断和流量镜像等流量管理能力,并支持 key-auth、JWT、OpenID Connect 等认证方式,以及 IP 和 Referer 访问控制和多种限流插件。可观测性方面可对接 Prometheus、Zipkin、SkyWalking 及多种外部日志系统,服务发现支持 etcd、Consul、Nacos、Eureka 和 Zookeeper。
APISIX 支持 TCP/UDP、gRPC(含 gRPC 到 JSON 转码)、MQTT、Dubbo 等多种协议代理。插件可以用 Lua 编写,也可以通过 RPC 使用 Java、Go、Python、Node.js,或借助 Proxy Wasm SDK 开发。其 AI 网关模式支持代理多家大模型服务、跨模型负载均衡与故障转移,以及基于 Token 的限流。
核心功能
- 01路由、上游和插件支持运行时动态更新,无需重启
- 02提供负载均衡、健康检查、金丝雀发布、流量切分和熔断
- 03内置 key-auth、JWT、basic-auth、OpenID Connect 等认证插件
- 04可对接 Consul、Nacos、Eureka 等服务发现系统
- 05插件可用 Lua、Java、Go、Python、Node.js 编写,或通过 Proxy Wasm 开发
- 06提供大模型代理、故障转移和基于 Token 的限流等 AI 网关能力
适用场景
- 作为微服务的统一入口,将请求转发到后端服务
- 作为 Kubernetes Ingress Controller 管理集群流量
- 在多个大模型服务前部署统一网关,实现限流和故障转移
- 基于请求头、Cookie 或参数做金丝雀发布和 A/B 测试
快速上手
- 1
使用快速启动脚本安装并运行 APISIX(需要 Docker)
按 README 中的官方说明安装 - 2
验证 APISIX 在 9080 端口上运行
curl "http://127.0.0.1:9080" --head | grep Server - 3
通过 9180 端口的 Admin API 创建第一条路由
curl -i "http://127.0.0.1:9180/apisix/admin/routes/1" -X PUT -d ' { "uri": "/get", "upstream": { "type": "roundrobin", "nodes": { "httpbin.org:80": 1 } } }' - 4
通过 APISIX 发送请求以确认路由生效
curl "http://127.0.0.1:9080/get"
使用前须知
- 快速启动需要先安装 Docker。
- Admin API 默认只允许 127.0.0.1 访问,并使用 key 认证,远程访问需要额外配置。
标签
常见问题
- apisix 是什么?
- 基于 NGINX 和 etcd 构建的动态高性能 API 网关,支持路由、认证、限流及 AI 大模型流量管理。 Apache APISIX 是一款 API 网关,既处理客户端进入服务的南北向流量,也处理服务之间的东西向流量。它基于 NGINX 和 etcd 构建,路由、上游、证书和插件都可以通过 REST Admin API 在运行时修改,无需重启进程。它也可以作为 Kubernetes Ingress Controller 使用。
- apisix 可以免费使用吗?用的什么许可证?
- apisix 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- apisix 还在维护吗?
- 活跃维护中。apisix 最近一次提交是在 2026年10月16日。
- apisix 适合用来做什么?
- 作为微服务的统一入口,将请求转发到后端服务 作为 Kubernetes Ingress Controller 管理集群流量 在多个大模型服务前部署统一网关,实现限流和故障转移 基于请求头、Cookie 或参数做金丝雀发布和 A/B 测试
- apisix 怎么安装和运行?
- 使用快速启动脚本安装并运行 APISIX(需要 Docker) 验证 APISIX 在 9080 端口上运行: curl "http://127.0.0.1:9080" --head | grep Server 通过 9180 端口的 Admin API 创建第一条路由: curl -i "http://127.0.0.1:9180/apisix/admin/routes/1" -X PUT -d ' { "uri": "/get", "upstream": { "type": "roundrobin", "nodes": { "httpbin.org:80": 1 } } }' 通过 APISIX 发送请求以确认路由生效: curl "http://127.0.0.1:9080/get"
- 在哪里获取 apisix?
- 源代码和安装说明在 GitHub 上:https://github.com/apache/apisix
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个基于 Rust 的运行时,让服务、队列、定时任务与智能体通过统一的实时函数目录进行组合、发现与追踪。
开源 AI 网关与 Python SDK,用统一的 OpenAI 格式调用 100 多家大模型服务。
自托管的 AI 网关,将多家上游模型服务统一为 OpenAI、Claude、Gemini 兼容接口,并提供路由、密钥、配额与用量统计。
可自托管的 Web 应用防火墙与反向代理,过滤 HTTP 流量,拦截 SQL 注入、XSS、恶意爬虫和洪水攻击。
开源 AI 网关,通过统一的 OpenAI 兼容 API 接入 23 家以上大模型服务,支持故障转移、负载均衡与语义缓存。