You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用带SAS的Azure存储账户托管含相对路径资源的静态网页

可行解决方案汇总

方案1:CDN规则引擎自动附加SAS令牌(推荐)

你已配置的CDN可以解决该问题,操作逻辑如下:

  • 将存储账户的$web容器访问权限设为私有,关闭公开匿名访问
  • 在CDN规则引擎中配置两条核心规则:
    • 用户请求HTML入口文件时,CDN回源到存储账户Blob端点,自动附加有效期合理的账户级SAS令牌,返回HTML内容给用户
    • 用户请求CSS、JS、图片等静态资源时,规则自动匹配相对路径对应的资源位置,回源时自动附上相同的SAS令牌,无需修改网页内的相对路径引用逻辑
  • 可额外配置CDN访问限制(如IP白名单、地域限制)进一步加固安全,SAS令牌仅在CDN与存储之间传递,不会暴露给终端用户

方案2:生成网页时注入<base>标签

如果不想依赖CDN规则,可以在自动生成网页的环节修改模板,在HTML的<head>节点内插入<base>标签:

  • 标签的href属性值设置为带SAS的Blob服务端点前缀,示例格式:<base href="https://<存储账户名>.blob.core.chinacloudapi.cn/$web/?<SAS令牌>">
  • 配置后网页内所有相对路径的资源引用,都会自动拼接该前缀生成合法的带SAS绝对路径,无需修改原有的相对路径引用逻辑
  • 注意每次生成SAS令牌后同步更新<base>标签的href属性,避免SAS过期后资源无法访问

方案3:开启静态网站+身份验证(适合内部访问场景)

如果网页访问群体为组织内部用户,可以直接开启静态网站功能,搭配身份校验模块实现安全控制:

  • 开启静态网站保证相对路径正常解析,$web容器仍设为私有不允许匿名访问
  • 在静态网站端点前配置Azure应用服务认证授权模块或Azure AD应用代理,仅经过身份认证的用户可访问静态资源,无需管理SAS令牌

内容的提问来源于stack exchange,提问作者Matthias Wirth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 21:42:04