feat(aia): Complete AIA V2.0 with universal streaming capabilities
Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
This commit is contained in:
@@ -1,74 +1,67 @@
|
||||
# **子域名 iit.xunzhengyixue.com SSL 证书全流程配置指南 (针对 SAE/CLB 架构)**
|
||||
# **摮𣂼<EFBFBD><EFBFBD>?iit.xunzhengyixue.com SSL 霂<EFBFBD>髡<EFBFBD>冽<EFBFBD>蝔钅<EFBFBD>蝵格<EFBFBD><EFBFBD>?(<28><>笆 SAE/CLB <EFBFBD>嗆<EFBFBD>)**
|
||||
|
||||
根据你的《2025版部署手册》,你的公网入口为 CLB(IP: 8.140.53.236),后端为 SAE 应用。为了满足企业微信/服务号的 HTTPS 强制要求,请严格按照以下四个阶段执行操作。
|
||||
|
||||
## **阶段一:证书申请(在你的阿里云账号操作)**
|
||||
|
||||
1. **进入控制台**:登录你的阿里云账号,搜索进入 **“数字证书管理服务”**。
|
||||
2. **创建证书名额**:
|
||||
* 点击 **“正式证书”** \-\> **“个人测试证书(免费)”**。
|
||||
* 点击 **“创建证书”**,获得一个“待申请”状态的名额(每年有 20 个免费额度)。
|
||||
3. **提交申请信息**:
|
||||
* 在对应条目点击 **“证书申请”**。
|
||||
* **证书绑定域名**:填写 iit.xunzhengyixue.com。
|
||||
* **域名验证方式**:**必须选择“DNS 验证”**。
|
||||
* **CSR 生成方式**:选择“系统生成”。
|
||||
4. **获取验证信息**:提交后,页面会显示 **主机记录**(如 \_dnsauth.iit)和 **记录值**(一串随机长字符串)。请记录下来发给持有域名的同事。
|
||||
<EFBFBD>寞旿雿删<EFBFBD><EFBFBD>?025<32><35><EFBFBD>蝵脫<E89DB5><E884AB>䎚<EFBFBD>页<EFBFBD>雿删<E99BBF><E588A0>祉<EFBFBD><E7A589>亙藁銝?CLB嚗㇆P: 8.140.53.236嚗㚁<EFBFBD><EFBFBD>𡒊垢銝?SAE 摨𠉛鍂<F0A0899B><E98D82>蛹鈭<E89BB9>說頞喃<E9A09E>銝𡁜凝靽?<3F>滚𦛚<E6BB9A>瑞<EFBFBD> HTTPS 撘箏<E69298>閬<EFBFBD><E996AC>嚗諹窈銝交聢<E4BAA4>厩<EFBFBD>隞乩<E99A9E><E4B9A9>𥕢葵<F0A595A2>嗆挾<E59786>扯<EFBFBD><E689AF>滢<EFBFBD><E6BBA2>?
|
||||
## **<2A>嗆挾銝<E68CBE>嚗朞<E59A97>銋衣𤚗霂瘀<E99C82><E79880>其<EFBFBD><E585B6><EFBFBD>燵<EFBFBD>䔶<EFBFBD>韐血噡<E8A180>滢<EFBFBD>嚗?*
|
||||
|
||||
1. **餈𥕦<E9A488><F0A595A6>批<EFBFBD><E689B9>?*嚗𡁶蒈敶蓥<E695B6><E893A5><EFBFBD>燵<EFBFBD>䔶<EFBFBD>韐血噡嚗峕<E59A97>蝝Z<E89D9D><EFBCBA>?**<EFBFBD>𨀣㺭摮𡑒<EFBFBD>銋衣恣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>﹦<EFBFBD>?*<2A>?
|
||||
2. **<EFBFBD>𥕦遣霂<EFBFBD>髡<EFBFBD>漤<EFBFBD>**嚗?
|
||||
* <20>孵稬 **<EFBFBD>𨀣迤撘讛<EFBFBD>銋色<EFBFBD>?* \-\> **<EFBFBD>靝葵鈭箸<EFBFBD>霂閗<EFBFBD>銋佗<EFBFBD><EFBFBD>滩晶嚗争<EFBFBD>?*<2A>?
|
||||
* <20>孵稬 **<EFBFBD>𨅯<EFBFBD>撱箄<EFBFBD>銋色<EFBFBD>?*嚗諹繮敺𦯀<E695BA>銝芬<E98A9D>𨅯<EFBFBD><F0A885AF>唾窈<E594BE>萘𠶖<E89098><F0A0B696><EFBFBD><EFBFBD>漤<EFBFBD>嚗<EFBFBD><E59A97>撟湔<E6929F> 20 銝芸<E98A9D>韐寥<E99F90>摨佗<E691A8><E4BD97>?
|
||||
3. **<EFBFBD>𣂷漱<EFBFBD>唾窈靽⊥<EFBFBD>**嚗?
|
||||
* <20>典笆摨娍辺<E5A88D>桃<EFBFBD><E6A183>?**<2A>𡏭<EFBFBD>銋衣𤚗霂猾<E99C82>?*<2A>?
|
||||
* **霂<>髡蝏穃<E89D8F><E7A983>笔<EFBFBD>**嚗𡁜‵<F0A1819C>?iit.xunzhengyixue.com<6F>?
|
||||
* **<2A>笔<EFBFBD>撉諹<E69289><E8ABB9>孵<EFBFBD>**嚗?*敹<>◆<EFBFBD>㗇𥋘<E39787>𡤜NS 撉諹<E69289><E8ABB9>?*<2A>?
|
||||
* **CSR <20><><EFBFBD><EFBFBD>孵<EFBFBD>**嚗𡁻<E59A97>㗇𥋘<E39787>𦦵頂蝏毺<E89D8F><E6AFBA>鐥<EFBFBD>腈<EFBFBD>?
|
||||
4. **<EFBFBD>瑕<EFBFBD>撉諹<EFBFBD>靽⊥<EFBFBD>**嚗𡁏<E59A97>鈭文<E988AD>嚗屸△<E5B1B8>V<EFBFBD><EFBCB6>曄內 **銝餅㦤霈啣<E99C88>**嚗<><E59A97> \_dnsauth.iit嚗匧<E59A97> **霈啣<E99C88><E595A3>?*嚗<><E59A97>銝脤<E98A9D><E884A4>粹鵭摮㛖泵銝莎<E98A9D><E88E8E><EFBFBD>窈霈啣<E99C88>銝𧢲䔉<F0A7A2B2>𤑳<EFBFBD><F0A491B3><EFBFBD><EFBFBD><EFBFBD>笔<EFBFBD><E7AC94><EFBFBD><EFBFBD>鈭卝<E988AD>?
|
||||
## **<2A>嗆挾鈭䕘<E988AD><E49598>笔<EFBFBD>餈墧𦻖銝𡡞<E98A9D>霂<EFBFBD><E99C82>頝刻揭<E588BB>瑕<EFBFBD>雿頣<E99BBF>**
|
||||
|
||||
甇日𧫴畾菟<EFBFBD>閬<EFBFBD><EFBFBD><EFBFBD>䔶<EFBFBD><EFBFBD>典<EFBFBD><EFBFBD>輸<EFBFBD>鈭𤏸揭<EFBFBD>瘀<EFBFBD>xunzhengyixue.com <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>銝𧢲<E98A9D>雿頣<E99BBF>
|
||||
|
||||
1. **建立 A 记录(建立连接)**:
|
||||
1. **撱箇<EFBFBD> A 霈啣<E99C88>嚗<EFBFBD>遣蝡贝<E89DA1><E8B49D>伐<EFBFBD>**嚗?
|
||||
* **銝餅㦤霈啣<E99C88>**嚗餜it
|
||||
* **霈啣<E99C88>蝐餃<E89D90>**嚗鋫
|
||||
* **记录值**:8.140.53.236(指向你的 SAE CLB 公网 IP)
|
||||
* **目的**:让访问者能找到你的服务器。
|
||||
2. **建立 TXT 记录(证书验证)**:
|
||||
* **主机记录**:填写你从阶段一获得的 \_dnsauth.iit。
|
||||
* **霈啣<EFBFBD><EFBFBD>?*嚗?.140.53.236嚗<EFBFBD><EFBFBD><EFBFBD>睲<EFBFBD><EFBFBD>?SAE CLB <EFBFBD>祉<EFBFBD> IP嚗?
|
||||
* **<EFBFBD>桃<EFBFBD>**嚗朞悟霈輸䔮<E8BCB8><E494AE><EFBFBD><EFBFBD>曉<EFBFBD>雿删<E99BBF><E588A0>滚𦛚<E6BB9A>具<EFBFBD>?
|
||||
2. **撱箇<EFBFBD> TXT 霈啣<EFBFBD>嚗<EFBFBD><EFBFBD>銋阡<EFBFBD>霂<EFBFBD><EFBFBD>**嚗?
|
||||
* **銝餅㦤霈啣<EFBFBD>**嚗𡁜‵<F0A1819C>嗘<EFBFBD>隞𡡞𧫴畾萎<E795BE><E8908E>瑕<EFBFBD><E79195>?\_dnsauth.iit<EFBFBD>?
|
||||
* **霈啣<E99C88>蝐餃<E89D90>**嚗関XT
|
||||
* **记录值**:填写你发给他的那串长字符串。
|
||||
* **目的**:证明你对该子域名拥有控制权。
|
||||
3. **完成签发**:同事添加成功后,回到你的证书控制台点击 **“验证”**。等待 10-30 分钟,状态变为“已签发”。
|
||||
|
||||
* **霈啣<EFBFBD><EFBFBD>?*嚗𡁜‵<F0A1819C>嗘<EFBFBD><E59798>𤑳<EFBFBD>隞𣇉<E99A9E><F0A38789><EFBFBD>葡<EFBFBD>踹<EFBFBD>蝚虫葡<E899AB>?
|
||||
* **<EFBFBD>桃<EFBFBD>**嚗朞<E59A97><E69C9E>𦒘<EFBFBD>撖寡砲摮𣂼<E691AE><F0A382BC>齿𥅾<E9BDBF>㗇綉<E39787>嗆<EFBFBD><E59786>?
|
||||
3. **摰峕<EFBFBD>蝑曉<EFBFBD>**嚗𡁜<E59A97>鈭𧢲溶<F0A7A2B2>䭾<EFBFBD><E4ADBE>笔<EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>唬<EFBFBD><E594AC><EFBFBD><EFBFBD>銋行綉<E8A18C>嗅蝱<E59785>孵稬 **<EFBFBD>𣈯<EFBFBD>霂<EFBFBD><EFBFBD>?*<2A><><EFBFBD>敺?10-30 <20><><EFBFBD>嚗𣬚𠶖<F0A3AC9A><F0A0B696><EFBFBD>銝算<E98A9D>𨅯歇蝑曉<E89D91><E69B89>腈<EFBFBD>?
|
||||
## **<2A>嗆挾銝㚁<E98A9D>SAE <20>函蔡霂<E894A1>髡嚗<E9ABA1>瓲敹<E793B2>郊撉歹<E69289>**
|
||||
|
||||
等证书签发后,需要将“钥匙”挂在大门(CLB)上。
|
||||
|
||||
1. **下载证书**:在控制台点击下载,服务器类型选择 **“Nginx”**。解压得到 .pem(证书)和 .key(私钥)文件。
|
||||
2. **配置 SAE 访问设置**:
|
||||
* 进入 SAE 控制台 \-\> 应用 frontend-nginx-service \-\> **访问设置**。
|
||||
* 找到已有的公网 CLB 访问记录,点击 **“修改配置”**。
|
||||
3. **添加 HTTPS 443 监听**:
|
||||
* **保留原有 80 端口规则**:不要删除它。
|
||||
* **添加监听**:
|
||||
蝑㕑<EFBFBD>銋衣倌<EFBFBD>穃<EFBFBD>嚗屸<EFBFBD>閬<EFBFBD><EFBFBD><EFBFBD>𣈯𤨎<EFBFBD>仮<EFBFBD>脲<EFBFBD><EFBFBD>典之<EFBFBD>剁<EFBFBD>CLB嚗劐<EFBFBD><EFBFBD>?
|
||||
1. **銝贝蝸霂<E89DB8>髡**嚗𡁜銁<F0A1819C>批<EFBFBD><E689B9>啁<EFBFBD><E59581>颱<EFBFBD>頧踝<E9A0A7><E8B89D>滚𦛚<E6BB9A>函掩<E587BD>钅<EFBFBD>㗇𥋘 **<EFBFBD>鑥ginx<EFBFBD>?*<2A><>圾<EFBFBD>见<EFBFBD><E8A781>?.pem嚗<6D><E59A97>銋佗<E98A8B><E4BD97>?.key嚗<79><E59A97><EFBFBD>伐<EFBFBD><E4BC90><EFBFBD>辣<EFBFBD>?
|
||||
2. **<EFBFBD>滨蔭 SAE 霈輸䔮霈曄蔭**嚗?
|
||||
* 餈𥕦<E9A488> SAE <20>批<EFBFBD><E689B9>?\-\> 摨𠉛鍂 frontend-nginx-service \-\> **霈輸䔮霈曄蔭**<EFBFBD>?
|
||||
* <EFBFBD>曉<EFBFBD>撌脫<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵?CLB 霈輸䔮霈啣<E99C88>嚗𣬚<E59A97><F0A3AC9A>?**<2A>靝耨<E99D9D>寥<EFBFBD>蝵栽<E89DB5>?*<2A>?
|
||||
3. **瘛餃<E7989B> HTTPS 443 <20>穃𨯬**嚗?
|
||||
* **靽萘<EFBFBD><EFBFBD><EFBFBD><EFBFBD> 80 蝡臬藁閫<E89781><E996AB>**嚗帋<E59A97>閬<EFBFBD><E996AC><EFBFBD>文<EFBFBD><E69687>?
|
||||
* **瘛餃<EFBFBD><EFBFBD>穃𨯬**嚗?
|
||||
* **<2A>讛悅**嚗䥅TTPS
|
||||
* **HTTPS 端口**:443(标准加密端口)
|
||||
* **SSL 证书**:选择“自定义上传”,用记事本打开那两个文件,完整复制内容贴入对应的“证书内容”和“私钥内容”框中。
|
||||
* **双向认证**:**必须关闭 (OFF)**。
|
||||
* **容器端口**:填写 80(对应你手册 5.2 节 Nginx 容器的端口)。
|
||||
4. **开启 HTTP 重定向至 HTTPS**:
|
||||
* 在刚才的“修改配置”弹窗中,找到 **HTTP 80** 那一行规则。
|
||||
* 勾选下方的 **“HTTP 重定向至 HTTPS”** 开关。
|
||||
* **目的**:用户输入 http://... 会自动强制跳转到安全的 https://...。
|
||||
|
||||
* **HTTPS 蝡臬藁**嚗?43嚗<33><E59A97><EFBFBD><EFBFBD><EFBFBD>撖<EFBFBD>垢<EFBFBD><E59EA2><EFBFBD>
|
||||
* **SSL 霂<EFBFBD>髡**嚗𡁻<E59A97>㗇𥋘<E39787>𡏭䌊摰帋<E691B0>銝𠹺<E98A9D><F0A0B9BA>嘅<EFBFBD><E59885>刻扇鈭𧢲𧋦<F0A7A2B2>枏<EFBFBD><E69E8F><EFBFBD>舅銝芣<E98A9D>隞塚<E99A9E>摰峕㟲憭滚<E686AD><E6BB9A><EFBFBD>捆韐游<E99F90>撖孵<E69296><E5ADB5><EFBFBD><EFBFBD>𡏭<EFBFBD>銋血<E98A8B>摰嫖<E691B0>嘥<EFBFBD><E598A5>𦦵<EFBFBD><F0A6A6B5>亙<EFBFBD>摰嫖<E691B0>脲<EFBFBD>銝准<E98A9D>?
|
||||
* **<EFBFBD><EFBFBD><EFBFBD>霈方<EFBFBD>**嚗?*敹<>◆<EFBFBD>喲𡡒 (OFF)**<EFBFBD>?
|
||||
* **摰孵膥蝡臬藁**嚗𡁜‵<F0A1819C>?80嚗<30>笆摨𥪯<E691A8><F0A5AAAF>见<EFBFBD> 5.2 <EFBFBD>?Nginx 摰孵膥<EFBFBD><EFBFBD>垢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||||
4. **撘<EFBFBD><EFBFBD>?HTTP <EFBFBD>滚<EFBFBD><EFBFBD>𤏸秐 HTTPS**嚗?
|
||||
* <EFBFBD>典<EFBFBD><EFBFBD>滨<EFBFBD><EFBFBD>靝耨<EFBFBD>寥<EFBFBD>蝵栽<EFBFBD>嘥撕蝒𦯀葉嚗峕𪄳<EFBFBD>?**HTTP 80** <20><><EFBFBD>銵諹<E98AB5><E8ABB9>踺<EFBFBD>?
|
||||
* <EFBFBD>暸<EFBFBD>劐<EFBFBD><EFBFBD>寧<EFBFBD> **<EFBFBD>𣿯TTP <EFBFBD>滚<EFBFBD><EFBFBD>𤏸秐 HTTPS<50>?* 撘<><E69298>喋<EFBFBD>?
|
||||
* **<EFBFBD>桃<EFBFBD>**嚗𡁶鍂<F0A181B6>瑁<EFBFBD><E79181>?http://... 隡朞䌊<E69C9E>典撩<E585B8>嗉歲頧砍<E9A0A7>摰匧<E691B0><E58CA7>?https://...<EFBFBD>?
|
||||
## **<2A>嗆挾<E59786>𨥈<EFBFBD>撉諹<E69289>銝𤾸凝靽∠垢<E288A0>磰<EFBFBD>**
|
||||
|
||||
1. **全链路测试**:
|
||||
* 访问 https://iit.xunzhengyixue.com/api/v1/health。
|
||||
* 若返回 JSON 且地址栏显示“小绿锁”,说明 HTTPS 链路已通。
|
||||
2. **微信校验文件部署**:
|
||||
* 从企业微信/服务号后台下载 WW\_verify\_xxx.txt。
|
||||
* 放入前端代码的 public 目录(这样打包后会在根目录)。
|
||||
* 运行 docker build 和 docker push(参考手册 11.1 节)。
|
||||
* 在 SAE 点击“部署应用”更新镜像。
|
||||
* 确保 https://iit.xunzhengyixue.com/WW\_verify\_xxx.txt 可被外部访问。
|
||||
|
||||
1. **<EFBFBD>券曎頝舀<EFBFBD>霂?*嚗?
|
||||
* 霈輸䔮 https://iit.xunzhengyixue.com/api/v1/health<EFBFBD>?
|
||||
* <EFBFBD>亥<EFBFBD><EFBFBD>?JSON 銝𥪜𧑐<F0A5AA9C><F0A79190><EFBFBD>𤩺遬蝷算<E89DB7>𨅯<EFBFBD>蝏輸<E89D8F><E8BCB8>嘅<EFBFBD>霂湔<E99C82> HTTPS <20>曇楝撌脤<E6928C>𠾼<EFBFBD>?
|
||||
2. **敺桐縑<EFBFBD>⊿<EFBFBD><EFBFBD><EFBFBD>辣<EFBFBD>函蔡**嚗?
|
||||
* 隞𦒘<EFBFBD>銝𡁜凝靽?<3F>滚𦛚<E6BB9A>瑕<EFBFBD><E79195>唬<EFBFBD>頧?WW\_verify\_xxx.txt<EFBFBD>?
|
||||
* <EFBFBD>曉<EFBFBD><EFBFBD>滨垢隞<EFBFBD><EFBFBD><EFBFBD>?public <20>桀<EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>瑟<EFBFBD><E7919F><EFBFBD><EFBFBD>隡𡁜銁<F0A1819C>寧𤌍敶𤏪<E695B6><F0A48FAA>?
|
||||
* 餈鞱<EFBFBD> docker build <EFBFBD>?docker push嚗<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?11.1 <20><><EFBFBD><EFBFBD>?
|
||||
* <EFBFBD>?SAE <EFBFBD>孵稬<EFBFBD>𣈯<EFBFBD>蝵脣<EFBFBD><EFBFBD>兩<EFBFBD>脲凒<EFBFBD>圈<EFBFBD><EFBFBD>譌<EFBFBD>?
|
||||
* 蝖桐<EFBFBD> https://iit.xunzhengyixue.com/WW\_verify\_xxx.txt <EFBFBD>航◤憭㚚<EFBFBD>霈輸䔮<EFBFBD>?
|
||||
## **<2A>働 <20>踹<EFBFBD><E8B8B9>餌<EFBFBD>**
|
||||
|
||||
* **端口别写错**:是 **443**,不是 433 或其他。
|
||||
* **双向认证**:千万别开,开了 PI 的手机就连不上了。
|
||||
* **容器端口**:CLB 负责解密,解密后依然把流量发给容器的 **80** 端口,所以容器端口填 80 是正确的。
|
||||
* **解析优先级**:同事加 A 记录时,确保没有冲突的 CNAME 记录指向同一主机名 iit。
|
||||
|
||||
**当前状态**:SOP Fully Detailed | **建议**:证书签发后,第一时间按“阶段三”进行 CLB 配置。
|
||||
* **蝡臬藁<EFBFBD>怠<EFBFBD><EFBFBD>?*嚗𡁏糓 **443**嚗䔶<E59A97><E494B6>?433 <20>硋<EFBFBD>隞硔<E99A9E>?
|
||||
* **<EFBFBD><EFBFBD><EFBFBD>霈方<EFBFBD>**嚗𡁜<E59A97>銝<EFBFBD><E98A9D>撘<EFBFBD>嚗<EFBFBD><E59A97>鈭?PI <20><><EFBFBD><EFBFBD>箏停餈硺<E9A488>銝𠹺<E98A9D><F0A0B9BA>?
|
||||
* **摰孵膥蝡臬藁**嚗鋴LB 韐蠘提閫<E68F90><E996AB>嚗諹圾撖<E59CBE><E69296>靘萘<E99D98><E89098>𦠜<EFBFBD><F0A6A09C>誩<EFBFBD>蝏坔捆<E59D94>函<EFBFBD> **80** 蝡臬藁嚗峕<E59A97>隞亙捆<E4BA99>函垢<E587BD><E59EA2>‵ 80 <20>舀迤蝖桃<E89D96><E6A183>?
|
||||
* **閫<EFBFBD><EFBFBD>隡睃<EFBFBD>蝥?*嚗𡁜<E59A97>鈭见<E988AD> A 霈啣<E99C88><E595A3>塚<EFBFBD>蝖桐<E89D96>瘝⊥<E7989D><E28AA5>脩<EFBFBD><E884A9>?CNAME 霈啣<E99C88><E595A3><EFBFBD><EFBFBD><EFBFBD>䔶<EFBFBD>銝餅㦤<E9A485>?iit<EFBFBD>?
|
||||
**敶枏<E695B6><E69E8F>嗆<EFBFBD>?*嚗锭OP Fully Detailed | **撱箄悅**嚗朞<E59A97>銋衣倌<E8A1A3>穃<EFBFBD>嚗𣬚洵銝<E6B4B5><E98A9D>園𡢿<E59C92>争<EFBFBD>𣈯𧫴畾萎<E795BE><E8908E>肽<EFBFBD>銵?CLB <20>滨蔭<E6BBA8>
|
||||
Reference in New Issue
Block a user