我的知识记录

易优CMS阿里云OSS上传图片报错_AccessKey_Bucket_Endpoint_跨域_完整排查

易优CMS配置阿里云OSS上传报错,按错误码和配置项完整排查。

配置项(后台→系统→基本参数→附件设置→OSS): - AccessKey ID - AccessKey Secret - Bucket名称 - Endpoint(地域节点) - 上传目录 - 访问域名

错误码1:AccessDenied(无权限) - RAM用户没有Bucket读写权限。 - RAM控制台→用户→添加权限:AliyunOSSFullAccess。 - 或自定义策略: ``` {"Version":"1","Statement":[{"Effect":"Allow","Action":["oss:*"],"Resource":["acs:oss:*:*:bucket名","acs:oss:*:*:bucket名/*"]}]} ``` - 最小权限原则,只允许访问指定Bucket。

错误码2:InvalidAccessKeyId - AccessKey ID不存在、被禁用、被删除。 - RAM控制台检查用户和AccessKey状态。 - 重新创建AccessKey,准确复制ID和Secret。

错误码3:SignatureDoesNotMatch - Secret错误,或签名计算问题。 - 重新复制Secret,确保无空格、换行。 - 服务器时间不准:`ntpdate ntp.aliyun.com`同步。 - 重新生成一对AccessKey测试。

错误码4:NoSuchBucket - Bucket名称错误,或Bucket和Endpoint地域不匹配。 - OSS控制台确认Bucket存在,复制准确名称。 - Endpoint必须和Bucket同地域: - 杭州→oss-cn-hangzhou.aliyuncs.com - 上海→oss-cn-shanghai.aliyuncs.com - 北京→oss-cn-beijing.aliyuncs.com - 内网Endpoint(带-internal)只能在阿里云同地域服务器用。

错误码5:连接超时 - Endpoint错误(用了内网地址但服务器不在阿里云)。 - 服务器网络不通。 - `curl -I Endpoint地址`测试。 - 换成外网Endpoint测试。 - 检查防火墙/安全组是否允许出站443。

错误码6:上传成功但图片不显示 - 访问域名配置错误。 - Bucket权限不是公共读:OSS控制台→权限管理→读写权限→公共读。 - 自定义域名没绑定或DNS没解析: - OSS控制台→传输管理→域名管理→绑定用户域名。 - DNS添加CNAME记录指向Bucket外网域名。 - 没绑定自定义域名就填Bucket默认外网域名。

错误码7:跨域错误(CORS) - 浏览器直传OSS时需要配置跨域。 - OSS控制台→数据安全→跨域设置→添加规则: - 来源:网站域名 - Methods:POST, GET, PUT - Headers:* - 易优默认服务器端上传,一般不需要CORS。用了直传插件才需要。

错误码8:PHP扩展缺失 - curl:OSS SDK用curl请求。 - openssl:HTTPS通信。 - 宝塔PHP设置→安装扩展确认。 - `php -m|grep -E "curl|openssl"`。

错误码9:文件太大 - PHP的upload_max_filesize和post_max_size太小。 - 宝塔PHP设置里调大(如50M),重启PHP。 - OSS本身单文件最大48.8TB,不限制。

测试步骤: 1. 用OSS官方工具ossbrowser测试同一对密钥能否上传。 - 能→密钥权限正常,是易优配置问题。 - 不能→密钥或权限问题,先修OSS侧。 2. 易优后台传50KB小jpg,看具体报错。 3. 查OSS访问日志(OSS控制台→日志管理),看请求详细错误。

配置成功验证: - 后台上传图片,OSS控制台文件管理能看到。 - 前台图片URL是访问域名,能正常显示。 - 服务器磁盘不增长(图片在OSS)。 - 图片加载速度快(OSS有CDN加速)。

注意事项: - AccessKey Secret只在创建时显示一次,忘了重新生成。 - 密钥不要泄露,不要提交到Git。 - Bucket名全小写,全局唯一。 - 公共读Bucket任何人能读,适合网站图片;私有Bucket需要签名URL,不适合公开图片。 - OSS有流量费用,访问量大注意成本,可配合CDN回源减免。

OSS适合图片多的站点(电商、资讯),节省服务器存储和带宽。配置注意权限和地域两个关键点,大部分报错都是这两个的问题。

易优CMS阿里云OSS上传图片报错_AccessKey_Bucket_Endpoint_跨域_完整排查

标签:

更新时间:2026-08-26 17:51:48

上一篇:公司网站图片和文字更新的SEO优化指南

下一篇:PbootCMS后台填写授权码变成INF问题的解决办法_免费授权_付费授权_域名绑定