🚫 OSS 连接验证失败问题解决指南
您遇到的错误信息如下:
Code: PublicEndpointForbidden
Message: Not allowed using the OSS public endpoint, please use CNAME instead.
HostId: chatserver-dp.oss-cn-shanghai.aliyuncs.com
❓ 原因分析
这个错误提示表明 禁止通过 OSS 的公共域名(Public Endpoint)进行访问,您需要使用 CNAME 域名 来访问对应的对象存储服务。
🔍 解决办法
-
配置 CNAME:
- 在阿里云 OSS 控制台中为您的 bucket 绑定自定义域名,并且完成 CNAME 配置。
- 比如将
yourdomain.com
解析到 OSS 提供的 CNAME 地址
-
访问方式变更:
- 确认您的代码或应用程序访问 OSS 时,使用的是 您的自定义域名(CNAME) 进行访问。
- 不要使用
*.oss-cn-shanghai.aliyuncs.com
这类官方提供的公共endpoint。
-
示例参考:
-
原地址: https://chatserver-dp.oss-cn-shanghai.aliyuncs.com/xxx.jpg
-
推荐用您自己的 CNAME 地址,比如: https://oss.yourdomain.com/xxx.jpg
-
文档推荐:
💡 常见疑问
- Q: CNAME 没有生效怎么办?
A: 请确保 DNS 解析生效,同时 OSS 控制台已添加并验证您的域名。
- Q: 之前可以用 public endpoint,现在不能了?
A: 某些场景/策略下,阿里云会强制要求必须使用绑定的自定义域名,以提升安全和隔离性。
🎯 按照上述说明操作后,再次尝试连接即可。如有更多疑问,欢迎随时提问!