当前位置: 首页 > news >正文

帝国CMS阿里云OSS插件

插件介绍

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域名加速

安装步骤

操作前请务必备份数据库及程序文件。

前置准备

  1. 阿里云 OSS 准备

    • 已开通阿里云 OSS 服务,并创建好 Bucket
    • 已获取 AccessKey ID 和 AccessKey Secret
    • 如果需要 CDN 加速,已在阿里云 CDN 控制台配置好加速域名并指向 OSS Bucket
  2. 初始化

    • 解压下载的 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包相关的程序文件,需要对照以下修改点手动修改:

文件 1:e/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']);

文件 2:e/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')){$__r=emposs_sync::file(array('yname'=>$new_name.$func_exname));if(!empty($__r['url'])){$returnr['oss_url']=$__r['url'];}}

文件 3:e/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插件,完成配置即可使用。

配置步骤

  1. 进入后台 →插件Wayne OSS插件

  2. 填写阿里云OSS参数:

    配置项说明
    启用插件勾选后生效
    OSS服务商选择"阿里云OSS"
    BucketOSS Bucket名称
    EndpointEndpoint域名
    CDN域名可选
    CName绑定Endpoint为自定义域名时勾选
    保留本地备份勾选后上传不会删除本地文件
  3. 点击测试连接验证配置是否正确

  4. 点击保存配置

  5. (可选)进入批量迁移,将存量本地附件迁移至OSS

插件截图

卸载

进入后台 →插件Wayne OSS插件→ 点击卸载插件

注意事项

文章标题图 titlepic 字段长度只有 varchar(120),如果OSS地址比较长,修改数据库字段长度,将 titlepic 字段从 varchar(120) 改为 varchar(255) 或更大。
详细可以参考:Wayne帝国CMS阿里云OSS插件

http://www.rkmt.cn/news/1420091.html

相关文章:

  • 别再手动拖控件了!用Qt的QHBoxLayout搞定复杂界面布局(附完整代码)
  • 终极指南:如何用ncmdumpGUI轻松转换网易云音乐NCM格式,实现跨设备音乐自由
  • ACM下学期第六次周赛
  • 2026年最新宜城市黄金回收白银回收铂金回收靠谱店铺权威排行榜:纯金+金条+银条+钯金 门店地址及联系方式推荐 - 亦辰小黄鸭
  • 别再死记硬背了!用‘信号旅行团’的故事,轻松搞懂幅频和相频特性
  • Hitboxer:终极键盘按键重映射和SOCD工具提升游戏操作体验
  • 别再只盯着LOF了!盘点5种更高效的异常检测算法(附Python代码与适用场景指南)
  • Agent角色设计的艺术:专业化与通用化的平衡
  • 终极指南:如何在Windows系统免费获取macOS风格鼠标指针
  • 别再死磕有限元了!用Python和PyTorch快速上手PINN,搞定偏微分方程反问题
  • 3分钟掌握QQ音乐解码神器:qmcdump让你的加密音乐重获自由
  • 矩阵控制屏障函数(MCBF)原理与多无人机系统应用
  • GIS数据工程师的私藏技巧:用FME的StringSearcher和AttributeCreator玩转OSGB批量重命名与格式转换
  • YouTube 2026 新规:AI 生成内容自动检测 + 更醒目标签,创作者与观众的双赢
  • Midjourney的Fast和Relax模式到底怎么选?算算你的10刀/30刀套餐怎么用最划算
  • ncmdumpGUI:一键解锁网易云音乐NCM格式,实现全设备音乐自由
  • 基于555定时器的Atari合成器DIY:从电路原理到3D打印外壳全流程
  • 如何彻底解放你的QQ音乐:qmcdump终极音频解密指南
  • 2026年汨罗市正规上门黄金白银回收品牌门店名录:K金+铂金+金条+银条回收门店联系方式推荐+指南 - 前途无量YY
  • NVIDIA Profile Inspector完全指南:简单快速释放游戏性能的免费神器
  • 2026年深圳黄金回收综合测评,3 家本地机构正相对比,谁是第一? - 奢侈品回收测评
  • SM2国密算法在C#里到底怎么用?一个控制台程序带你搞定加密、解密和签名验签
  • 遥感影像处理:用Python的GDAL库把TIF批量转成PNG(附完整代码)
  • ARM9上跑FreeRTOS?手把手教你为S3C2440移植系统心跳(附完整代码)
  • 告别官方例程:在VSCode中从零搭建你的第一个Franka机械臂控制项目(基于libfranka 0.7.0)
  • K-means聚类实战:如何用Python可视化评估最佳K值(手把手画图+SSE分析指南)
  • 新手别怕!用Volatility 2.6分析WinXP内存镜像,一步步揪出svchost里的恶意dll
  • 天猫超市购物卡还能这样用?快速回收指南! - 团团收购物卡回收
  • 自动化如何避免踩坑?2026企业避坑指南与AI Agent实战解析
  • 3分钟掌握猫抓资源嗅探:网页视频音频一键下载终极指南