1. 路由匹配规则
-
URI:
/*
- 匹配所有路径(通配符)。
-
Host:
test-ai-application.dossen.com
- 仅处理该域名的请求。
-
Vars: 条件匹配
server_port
json
["server_port", "~~", "\\b(80|443)\\b"]
- 限制端口为
80
(HTTP)或443
(HTTPS)。 ~~
表示正则匹配,\b
是单词边界符。
- 限制端口为
2. 插件配置
启用 cors
插件以支持跨域 WebSocket:
json
"plugins": {
"cors": {
"allow_credential": true,
"allow_headers": "**",
"allow_methods": "**",
"allow_origins": "**",
"expose_headers": "**",
"max_age": 5
}
}
- 允许所有来源/头/方法:适合测试环境,生产环境建议按需限制。
- 预检缓存时间:
max_age=5
秒。
3. 后端服务配置
json
"upstream": {
"nodes": [{
"host": "10.30.97.248",
"port": 18080,
"weight": 1
}],
"type": "roundrobin",
"scheme": "http",
"timeout": {
"connect": 6000,
"send": 6000,
"read": 6000
},
"keepalive_pool": {
"idle_timeout": 60,
"requests": 1000,
"size": 320
}
}
- 后端节点:单节点
10.30.97.248:18080
,权重为 1。 - 负载均衡:轮询策略(
roundrobin
)。 - 超时设置:连接、发送、读取均为 6 秒。
- 连接池:提高长连接性能,支持 WebSocket 长会话。
4. WebSocket 支持
json
"enable_websocket": true
- 显式启用 WebSocket 协议支持。
- APISIX 默认不开启 WebSocket,需手动配置。
评论