1. 支持 CDN 配置
本文介绍如何配置衡石系统,实现 CDN 静态资源与程序分离配置。
支持的配置方式:
1.1. 后端配置前端cdn地址 (推荐方式)
此种方式,业务域名指向 hengshi 部署的服务,再告知浏览器去 cdn 的服务上获取静态资源文件。
示例中假设后端部署域名为 https://bi.domain.com
,前端 CDN 部署域名为https://cdn.domain.com
。
1.1.1. cdn 配置
支持两种方式:
cdn 自动代理 不用单独部署前端文件,将 cdn 的回源地址设置为
https://bi.domain.com
, 这样保障静态资源请求发过来时,自动回源获取。前端文件独立部署
前端对应版本的安装包为lhotse-x.y.z-xxx.zip,解压后保留static目录。 将 static 目录下的文件(不包含static目录,不包含static/index.html)上传到静态文件服务上,由 cdn 代理或用于将静态资源分流到独立的静态文件服务器。使通过cdn域名可以访问到https://cdn.domain.com/assets/xxx
。
1.1.2. hengshi 配置
依赖 hengshi 前面有一个反响代理,此处以 nginx 举例。配置反向代理给 hengshi 服务传一个 header
X-HS-CDN-Path
写明 cdn 地址proxy_set_header X-HS-CDN-Path "https://cdn.domain.com/"; # 注意地址以 '/' 结尾
请求 hengshi 服务,验证配置成功, 返回配置的地址则配置成功
curl https://bi.domain.com | grep -o '<name="cdn" content="https://cdn.domain.com/">'
1.1.3. 访问方式
浏览器访问 https://bi.domain.com
应该看到所有的 js 和 css 文件的请求都发送到了 https://cdn.domain.com
, api 请求依然发送给 https://bi.domain.com
。
1.2. 前端配置后端api地址
此种方式,业务域名指向 cdn 服务,再由前端自己访问后端 api,或依然访通过 cdn 间接访问 hengshi 后端 api。
示例中假设后端部署域名为 https://api.domain.com
,前端 CDN 部署域名为https://cdn.domain.com
。
1.2.1. cdn 配置
- 前端对应版本的安装包为lhotse-x.y.z-xxx.zip,解压后保留static目录。
- 将后端域名配置到前端
static/index.html
文件。cd static; sed -i -r 's#backend=\{api:"[^"]*"\}#backend=\{api:"https://api.domain.com"\}#' index.html
- 将 static 下 index.html 与 assets 部署到 cdn 跟路径下,使通过cdn域名可以访问到
https://cdn.domain.com/index.html
与https://cdn.domain.com/assets/xxx
。
1.2.2. hengshi 配置
- 将前端 cdn 域名配置给后端配置文件 (假设后端部署在 /opt/hengshi), 在 /opt/hengshi/conf/hengshi-sense-env.sh中添加变量
export ACCESS_CONTROL_ALLOW_ORIGIN="https://cdn.domain.com"
。 - 重启 hengshi 服务。
cd /opt/hengshi; bin/hengshi-sense-bin restart hengshi;
1.2.3. 访问方式
浏览器访问 cdn 前端域名https://cdn.domain.com
,应该看到所有 js 和 css 文件氢气发送到 https://cdn.domain.com
, api 请求发送到了 https://api.domain.com
results matching ""
No results matching ""
衡石文档
- 产品功能一览
- 发布说明
- 新手上路
- 安装与启动
- 系统管理员手册
- 数据管理员手册
- 分析人员手册
- 数据查看员手册
- API
- 最佳实践
- 衡石分析平台 API 手册
- 附录