tencent cloud

内容分发网络 CDN

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
应用场景
基本概念
使用限制
CDN性能说明(抽样)
购买指南
CDN 购买指南
ECDN 购买指南
快速入门
从零开始配置 CDN
接入域名
配置 CNAME
域名归属权验证
域名接入常见问题
配置指南
域名管理
域名配置
统计分析
刷新预热
日志服务
安全加速
服务查询
离线缓存
权限管理
权限配置
控制台权限说明
子账号或协作者开通实时日志的方法
场景教学
CDN 加速 COS 资源
实践教程
CDN 迁移至 EdgeOne 工具使用指南
CDN - CVM
CDN - COS
DNSPod 一键配置 CNAME
CDN日志定时存储
API 文档
History
Introduction
API Category
Content Management APIs
Real-time Log APIs
Service Query APIs
Data Query APIs
Making API Requests
Log Query APIs
StopCdnDomain
Configuration Management APIs
Obsoleted APIs
Other APIs
Data Types
Error Codes
常见问题
功能特性问题
计费相关问题
域名接入问题
缓存配置问题
刷新预热问题
统计分析问题
HTTPS 相关问题
访问相关问题
故障相关问题
故障处理
状态码说明及处理建议
不同节点缓存内容不一致
接入 CDN 后,网页访问速度慢
流量命中率偏低
CDN 域名突然出现404状态
页面展示异常-访问跨域报错
资源缓存未生效
CDN Service Level Agreement
词汇表
文档内容分发网络 CDN故障处理页面展示异常-访问跨域报错

页面展示异常-访问跨域报错

PDF
聚焦模式
字号
最后更新时间: 2025-08-20 10:15:11

现象描述

前端报跨域错误,导致页面错误或展示异常等问题,如下图




可能原因

跨域是由于浏览器的同源策略限制,同时也为了网页的安全性考虑,当通过脚本向不同的来源发送请求时,这个请求的响应会被浏览器拦截,从而导致前端报错或页面无法正常展示。而当一个请求URL的协议、域名、端口三者之间任意一个与当前页面URL不同即为跨域。

解决思路

1. 确认页面异常报错是否是由跨域造成的,如下所示。


2. 在 CDN 控制台配置对应的 HTTP 响应头部,定义允许访问该资源的域。

处理步骤

1. 登录 CDN 控制台,在对应的域名管理-高级配置-HTTP 响应头配置下,设置好 Access-Control-Allow-Origin 头部参数即可。如下图,即允许所有域名发起的跨域请求。详情请见 Access-Control-Allow-Origin 匹配模式介绍
2. 或针对性的设置为单个或多个已知的允许发起跨域请求的域名/IP,如下所示。
3. 同时也可以根据业务需要,加上如 Access-Control-Request-Method、Access-Control-Request-Headers 、Access-Control-Max-Age 等头部参数,来限制浏览器所能接受的请求的方法、可携带的头、预请求的有效时间等等。详情请见 参数支持列表
注意:
若您已在 COS 侧存储桶配置了跨域访问,为保证正常访问,请在 CDN 控制台 HTTP 响应头同步配置跨域规则。


参数支持列表

头部参数
说明
Access-Control-Allow-Origin
用于解决资源的跨域权限问题,域值定义了允许访问该资源的域。若来源请求 Host 在域名配置列表之内,则直接填充对应值在返回头部中。也可以设置通配符 “*”,允许被所有域请求。更多说明请见 Access-Control-Allow-Origin 匹配模式介绍。 支持输入“*” ,或多个域名 / IP / 域名与 IP 混填(必须包含 http://https://,填写示例:http://test.com,http://1.1.1.1, 逗号隔开)(注意:输入框最多可输入1000字符)。
Access-Control-Allow-Methods
用于设置跨域允许的 HTTP 请求方法,可同时设置多个方法,如下: Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Max-Age
用于指定预请求的有效时间,单位为秒。 非简单的跨域请求,在正式通信之前,需要增加一次 HTTP 查询请求,称为“预请求”,用来查明这个跨域请求是不是安全可以接受的,如下请求会被视为非简单的跨域请求: 以 GET、HEAD 或者 POST 以外的方式发起,或者使用 POST,但是请求数据类型为 application / x-www-form-urlencoded、 multipart / form-data、text / plain 以外的数据类型,如 application / xml 或者 text / xml。 使用自定义请求头为:Access-Control-Max-Age:1728000,表明在1728000秒(20天)内,对该资源的跨域访问不再发送另外一条预请求。
Access-Control-Expose-Headers
用于指定哪些头部可以作为响应的一部分暴露给客户端。 默认情况下,只有6种头部可以暴露给客户端:Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma。 如果想让客户端访问到其他的头部信息,可以进行如下设置,当输入多个头部时,需用 “,” 隔开,如:Access-Control-Expose-Headers: Content-Length,X-My-Header,表明客户端可以访问到 Content-Length 和 X-My-Header 这两个头部信息。


Access-Control-Allow-Origin 匹配模式介绍

匹配模式
域值
说明
全匹配
*
设置为 * 时,则响应添加头部: Access-Control-Allow-Origin:*
固定匹配
http://cloud.tencent.comhttps://cloud.tencent.comhttp://www.b.com
来源https://cloud.tencent.com,命中列表,则响应添加头部: Access-Control-Allow-Origin: https://cloud.tencent.com 来源为 https://www.qq.com,未命中列表,响应无变化。
二级泛域名匹配
https://*.tencent.com
来源 https://cloud.tencent.com,命中列表,则响应添加头部: Access-Control-Allow-Origin: https://cloud.tencent.com 来源为 https://cloud.qq.com,未命中列表,响应无变化。
端口匹配
https://cloud.tencent.com:8080
来源为 https://cloud.tencent.com:8080,命中列表,则响应添加头部: Access-Control-Allow-Origin:https://cloud.tencent.com:8080 来源为 https://cloud.tencent.com,未命中列表,响应无变化。
注意:
若存在特殊端口,则需要在列表中填写相关信息,不支持任意端口匹配,必须指定。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈