跳到主要内容

配置上游 HTTPS

TLS (传输层安全性协议) 是一种加密协议,旨在保护两方(例如 Web 浏览器和 Web 服务器)之间的通信。如果 API 网关和上游服务之间的流量不被认为是安全或私有的,服务通常需要 TLS。

本指南将向你展示如何在 APISIX 和上游服务之间配置 TLS。


APISIX 和上游之间的 TLS

前置条件

  • 安装 Docker
  • 安装 cURL 以向服务发送请求进行验证。
  • 安装并运行 APISIX,或者按照 快速入门教程 在 Docker 或 Kubernetes 中启动一个新的 APISIX 实例。

创建一个启用了 TLS 的路由

创建一个路由到示例上游 httpbin.org,使用其默认的 HTTPS 端口 443

curl -i "http://127.0.0.1:9180/apisix/admin/routes" -X PUT -d '
{
"id": "quickstart-tls-upstream",
"uri": "/ip",
"upstream": {
// Annotate 1
"scheme": "https",
"nodes": {
// Annotate 2
"httpbin.org:443":1
},
"type": "roundrobin"
}
}'

❶ 将 scheme 配置为 https

❷ 将端口配置为 443

测试 APISIX 和上游之间的 TLS

向路由发送请求:

curl -i "http://127.0.0.1:9080/ip"

HTTP/1.1 200 OK 响应验证了 APISIX 已成功通过 HTTPS 与上游服务建立连接并通信。

下一步

APISIX 还支持客户端和 APISIX 之间的 TLS 连接。请参阅 配置客户端和 APISIX 之间的 HTTPS