易优CMS阿里云OSS上传图片报错_Endpoint配置_跨域_权限全排查
易优CMS配置阿里云OSS上传报错,按以下完整路径排查。
配置项检查(后台→系统→基本参数→附件设置→OSS配置): - AccessKey ID:RAM用户的AccessKey,复制时无空格。 - AccessKey Secret:只在创建时显示,忘了重新生成。 - Bucket名称:全小写,全局唯一,和控制台一致。 - Endpoint:和Bucket同地域,如oss-cn-hangzhou.aliyuncs.com。阿里云服务器同地域用内网Endpoint(带-internal),其他用外网。 - 上传目录:Bucket下子目录名,如images,不要加斜杠。 - 访问域名:绑定的自定义域名或Bucket默认外网域名。
常见报错及解决: - AccessDenied:RAM用户权限不足。RAM控制台给用户加AliyunOSSFullAccess,或自定义策略允许访问指定Bucket。 - InvalidAccessKeyId:AccessKey不存在或被禁用。RAM控制台检查用户状态,重新生成密钥。 - SignatureDoesNotMatch:Secret错误。重新生成Secret,准确复制。 - NoSuchBucket:Bucket名错或地域不对。确认Bucket存在,Endpoint和Bucket同地域。 - 连接超时:Endpoint错、网络不通、内网Endpoint用在外网环境。换成外网Endpoint测试。 - 上传成功但图片不显示:访问域名错。检查访问域名配置,DNS解析是否正确。
RAM权限配置: RAM控制台→用户→创建用户→编程访问→记录AccessKey。 添加权限:AliyunOSSFullAccess(全部OSS权限)。 最小权限自定义策略: ``` { "Version":"1", "Statement":[{ "Effect":"Allow", "Action":["oss:*"], "Resource":["acs:oss:*:*:bucket名","acs:oss:*:*:bucket名/*"] }] } ```
Bucket配置: - 读写权限:公共读(网站图片需要公开访问)。 - 跨域设置(CORS):如果浏览器直传需要配置。来源填网站域名,Methods选POST/GET/PUT,Headers填*。易优默认服务器端上传,一般不需要。 - 绑定自定义域名:Bucket→传输管理→域名管理→绑定用户域名,如img.example.com。DNS添加CNAME记录指向Bucket外网域名。
PHP扩展: - curl必须开启(OSS SDK用)。 - openssl必须开启(HTTPS通信)。 - 宝塔PHP设置→安装扩展确认。 - 低版本PHP的cURL有SSL证书问题,升级PHP7.2+。
上传大小限制: - PHP的upload_max_filesize和post_max_size调大(如50M)。 - OSS本身单文件最大48.8TB,不限制。 - 大文件用分片上传,易优CMS默认普通上传,太大可能超时。
测试步骤: 1. 先传一张50KB的jpg小图,排除大小和格式问题。 2. 看易优CMS后台报错提示(通常显示OSS返回的错误码)。 3. 查OSS访问日志(OSS控制台→日志管理),看请求的具体错误。 4. 用OSS官方工具(ossbrowser)测试同一对密钥能否上传,能上传说明密钥没问题,是易优配置问题;不能上传说明密钥或权限问题。
配置成功后: - 后台上传的图片自动存OSS,源服务器不占磁盘。 - 图片URL用访问域名,加载速度快(OSS有CDN加速)。 - 适合图片多的站点(电商、资讯)。 - 注意OSS流量费用,访问量大的话开启OSS CDN回源减免费用。
易优CMS版本差异:不同版本OSS配置界面可能不同,旧版本可能在"系统→系统参数→附件设置"里,新版本可能在"应用→云存储"里。找不到的话看易优CMS官方文档对应版本的OSS配置说明。

更新时间:2026-08-26 17:41:12
上一篇:宝塔面板登录后空白页解决方法_面板打不开_502错误排查步骤