插件介绍Wayne OSS插件将网站附件上传至阿里云OSS对象存储减轻服务器存储与带宽压力。上传、删除、缩略图生成全流程自动同步本地附件一键批量迁移至OSS无缝集成帝国CMS 7.5/8.0。功能特点附件直传OSS后台上传、编辑器上传时直接写入OSS删除双向同步删除文章/附件时自动删除OSS对应文件避免垃圾文件占用空间缩略图自动同步帝国CMS生成缩略图/水印图后自动同步至OSS无需手动处理批量迁移分批将存量数据同步至OSS并替换数据库记录CDN加速支持配置自定义CDN域名全站附件地址自动替换为CDN地址保留本地备份可配置上传后是否保留本地文件灵活切换版本兼容自动识别帝国CMS 7.5/8.0连接测试后台一键测试OSS连通性验证配置正确性CDN域名支持CDN域名加速安装步骤操作前请务必备份数据库及程序文件。前置准备阿里云 OSS 准备已开通阿里云 OSS 服务并创建好 Bucket已获取 AccessKey ID 和 AccessKey Secret如果需要 CDN 加速已在阿里云 CDN 控制台配置好加速域名并指向 OSS Bucket初始化解压下载的 ZIP 包将e/extend/empire_oss/目录上传到站点的e/extend/下手动访问你的站点/e/extend/empire_oss/install.php进行安装在e/extend/empire_oss/core/config.php文件头部的$ak和$sk变量中填入 AccessKey ID 与 AccessKey Secret覆盖安装如果没有修改过zip包相关的程序文件可以复制e覆盖即可手动安装如果修改过zip包相关的程序文件需要对照以下修改点手动修改文件 1e/class/connect.php① 文件头部第 214 行之前— 插件自动载入在//--------------- 数据库 ---------------之前插入一行include_once ECMS_PATH.e/extend/empire_oss/index.php;② DoTranFile 函数第 5618 行— 文件移动后同步至OSS在函数末尾return $r之前FileServer 块之后插入$r emposs_sync::file($r);说明DoTranFile是帝国CMS核心上传函数此处注入后可确保所有本地上传编辑器上传、后台附件上传、批量上传自动同步至OSS无需在其他调用方重复注入。③ DoTranUrl 函数第 5833 行— 远程下载文件后同步至OSS在函数末尾return $r之前FileServer 块之后插入$r emposs_sync::file($r);④ ecom_DoTranFile 函数第 5777 行— 普通上传文件同步至OSS在return 1之前插入$ossR array(yname $r[yname]); emposs_sync::file($ossR);⑤ DoDelFile 函数第 5921 行— 删除本地文件时同步删除OSS文件在DelFiletext($delfile)之前插入emposs_sync::delete($fspath[filepath].$path.$r[filename]);文件 2e/class/gd.php⑥ ResizeImage 函数第 5 行— OSS文件不存在时从OSS拉回本地在函数体首行之后插入if(!file_exists($big_image_name) class_exists(emposs_sync)) {$big_image_name emposs_sync::ensureLocal($big_image_name);}⑦ ResizeImage 函数 — 生成的缩略图同步至OSS该函数有两个正常出口第 43 行和第 98 行在每处return $returnr之前分别插入if(class_exists(emposs_sync)){$__remposs_sync::file(array(yname$new_name.$func_exname));if(!empty($__r[url])){$returnr[oss_url]$__r[url];}}文件 3e/class/functions.php⑧ GetFpicToTpic 函数第 1397 行— 标题图片URL替换为OSS/CDN地址在“缩略图”分支中$firsttitlepic$fspath[fileurl].$rpath.small.$insertfile.$sfiler[filetype];之后插入if(!empty($sfiler[oss_url])) { $firsttitlepic$sfiler[oss_url]; }在“非缩略图”分支中$firsttitlepic$fspath[fileurl].$rpath.$picr[filename];之后插入$firsttitlepic emposs_sync::ossUrl($firsttitlepic);修改完成后进入帝国CMS后台 → 插件管理 → Wayne OSS插件完成配置即可使用。配置步骤进入后台 →插件→Wayne OSS插件填写阿里云OSS参数配置项说明启用插件勾选后生效OSS服务商选择阿里云OSSBucketOSS Bucket名称EndpointEndpoint域名CDN域名可选CName绑定Endpoint为自定义域名时勾选保留本地备份勾选后上传不会删除本地文件点击测试连接验证配置是否正确点击保存配置可选进入批量迁移将存量本地附件迁移至OSS插件截图卸载进入后台 →插件→Wayne OSS插件→ 点击卸载插件注意事项文章标题图 titlepic 字段长度只有 varchar(120)如果OSS地址比较长修改数据库字段长度将 titlepic 字段从 varchar(120) 改为 varchar(255) 或更大。详细可以参考Wayne帝国CMS阿里云OSS插件