阿里云对象存储 OSS帝国cms插件的各类问题,安全与使用说明(服务器保存文件)
阿里云oss 帝国cms插件的各类问题,安全与使用说明 对象存储 OSS
对象存储 OSS海量、安全、低成本、高可靠的云存储服务,提供99.9999999999%(12个9)的数据持久性。使用RESTful API 可以在互联网任何位置存储和访问,容量和处理能力弹性扩展,多种存储类型供选择全面优化存储成本。
1.打开 e/class/connect.php
找到
if(!defined('EmpireCMSConfig'))
{
exit();
}
在下面增加
//阿里云上传
require_once(ECMS_PATH.'e/ecmsshop/aliyunoss/autoload.php');
use OSS\OssClient;
use OSS\Core\OssException;
function aliup($filename,$img){
global $accessKeyId,$accessKeySecret,$endpoint,$bucket;
$object = $filename;
$content = $img;
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
$content = $ossClient->putObject($bucket, $object, $content);
return "";
}
//阿里云上传结束
继续找到
function DoTranFile($file,$file_name,$file_type,$file_size,$classid,$ecms=0){
找到
global $public_r,$class_r,$doetran,$efileftp_fr;
替换为
global $public_r,$class_r,$doetran,$efileftp_fr,$endpoint,$bucket,$alihttp,$issuo;
继续在下面找到
//FileServer
if($public_r['openfileserver'])
{
$efileftp_fr[]=$r['yname'];
}
return $r;
在上面增加
//开始存储到阿里云oss
$uri = $r["url"];
if (file_exists($_SERVER["DOCUMENT_ROOT"].$uri)) {
$string=ReadFiletext($_SERVER["DOCUMENT_ROOT"].$uri);
$alfile=$fspath['filepath'].$filepath.$r[filename];
if($issuo){
$alfile=str_replace("d/file/", "",$alfile);
$r[url]=str_replace("/d/file", "",$r[url]);
}
aliup($alfile,$string);
if($alihttp){
$r[url]=$alihttp.$r[url];
} else {
$r[url]="http://".$bucket.".".$endpoint.$r[url];
}
}
然后继续查找
//远程保存
function DoTranUrl($url,$classid){
把下面一行的
global $public_r,$class_r,$ecms_config,$efileftp_fr;
替换为
global $public_r,$class_r,$ecms_config,$efileftp_fr,$endpoint,$bucket,$alihttp,$issuo;
继续找到
$r[yname]=$r[savepath].$r[filename];
在下面增加
$alfile=$fspath['filepath'].$filepath.$r[filename];
if($issuo){
$alfile=str_replace("d/file/", "",$alfile);
$r[url]=str_replace("/d/file", "",$r[url]);
}
aliup($alfile,$string);
if($alihttp){
$r[url]=$alihttp.$r[url];
} else {
$r[url]="http://".$bucket.".".$endpoint.$r[url];
}
2.打开/e/admin/ecmseditor/fileinc/editorpic.php
找到if(!defined('InEmpireCMS'))
{
exit();
}
在下面加
require_once(ECMS_PATH.'e/ecmsshop/aliyunoss/config.php');
继续找到
$file=$fspath['fileurl'].$filepath.$r[filename];
修改为
if($alihttp){
$file=$alihttp.$fspath['fileurl'].$filepath.$r[filename];
} else {
$file="http://".$bucket.".".$endpoint.$fspath['fileurl'].$filepath.$r[filename];
}
if($issuo){
$file=str_replace("/d/file", "",$file);
}
3.继续打开 e/class/functions.php
在<?下面加require_once(ECMS_PATH.'e/ecmsshop/aliyunoss/config.php');
找到
function GetFpicToTpic($classid,$id,$num=1,$getfirsttitlespic=0,$swidth=0,$sheight=0,$fstb=1){
把下面的
global $empire,$dbtbpre,$public_r,$class_r,$loginin,$logininid;
修改为
global $empire,$dbtbpre,$public_r,$class_r,$loginin,$logininid,$endpoint,$bucket,$alihttp,$issuo;
继续找到
return $firsttitlepic;
在上面加
if($firsttitlepic){
if($alihttp){
$firsttitlepic=$alihttp.$firsttitlepic;
} else {
$firsttitlepic="http://".$bucket.".".$endpoint.$firsttitlepic;
}
if($issuo){
$firsttitlepic=str_replace("/d/file", "",$firsttitlepic);
}
}
4.上传e目录到网站目录
5.修改 \e\ecmsshop\aliyunoss\config.php
aid和akey在 https://ak-console.aliyun.com/?spm=5176.8465980.quick-entry-bucket.d2.43d99720yWGk0Z#/accesskey 里面新建
endpoint在 https://oss.console.aliyun.com/overview 查看
bucket 自己新建一个即可
6.新增 如果是帝国cms7.5 安装了多图上传功能 再按下面的进行修改
打开 /e/admin/ecmseditor/tranmore/tranmorefun.php
找到
global $empire,$dbtbpre,$public_r,$ecms_config;
替换为
global $empire,$dbtbpre,$public_r,$ecms_config,$endpoint,$bucket,$alihttp,$issuo;
继续找到
$tranmore_picr[$i]['picname']=stripSlashes($fileno);
在下面加
if($alihttp){
$tranmore_picr[$i]['bigpicurl']=$alihttp.$tranmore_picr[$i]['bigpicurl'];
if($tranmore_picr[$i]['smallpicurl']){
$tranmore_picr[$i]['smallpicurl']=$alihttp.$tranmore_picr[$i]['smallpicurl'];
}
} else {
$tranmore_picr[$i]['bigpicurl']="http://".$bucket.".".$endpoint.$tranmore_picr[$i]['bigpicurl'];
if($tranmore_picr[$i]['smallpicurl']){
$tranmore_picr[$i]['smallpicurl']="http://".$bucket.".".$endpoint.$tranmore_picr[$i]['smallpicurl'];
}
}
if($issuo){
$tranmore_picr[$i]['bigpicurl']=str_replace("/d/file", "",$tranmore_picr[$i]['bigpicurl']);
if($tranmore_picr[$i]['smallpicurl']){
$tranmore_picr[$i]['smallpicurl']=str_replace("/d/file", "",$tranmore_picr[$i]['smallpicurl']);
}
}
安装完毕
感谢您的支持!
如下示例代码:
if($alihttp){
$tranmore_picr[$i]['bigpicurl']=$alihttp.$tranmore_picr[$i]['bigpicurl'];
if($tranmore_picr[$i]['smallpicurl']){
$tranmore_picr[$i]['smallpicurl']=$alihttp.$tranmore_picr[$i]['smallpicurl'];
}
} else {
$tranmore_picr[$i]['bigpicurl']="http://".$bucket.".".$endpoint.$tranmore_picr[$i]['bigpicurl'];
if($tranmore_picr[$i]['smallpicurl']){
$tranmore_picr[$i]['smallpicurl']="http://".$bucket.".".$endpoint.$tranmore_picr[$i]['smallpicurl'];
}
}
if($issuo){
$tranmore_picr[$i]['bigpicurl']=str_replace("/d/file", "",$tranmore_picr[$i]['bigpicurl']);
if($tranmore_picr[$i]['smallpicurl']){
$tranmore_picr[$i]['smallpicurl']=str_replace("/d/file", "",$tranmore_picr[$i]['smallpicurl']);
}
}
免责/版权声明:
1、所有来源标注为 ECMSPLUS /zwcms.com的内容版权均为本站所有,若您需要引用、转载,只需要注明来源及原文链接即可,如涉及大面积转载,请来信告知,获取授权。
2、本站所提供的文章资讯、软件资源、素材源码等内容均为作者提供、网友推荐、互联网整理而来(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考,如有侵犯您的版权,请联系我们,本站将在三个工作日内改正。
3、若您的网站或机构从本站获取的一切资源进行商业使用,除来源为本站的资料需与本站协商外,其他资源请自行联系版权所有人。
4、 ECMSPLUS /zwcms.com不保证资源的准确性、安全性和完整性,请您在阅读、下载及使用过程中自行确认,本站亦不承担上述资源对您或您的网站造成的任何形式的损失或伤害
5、未经 ECMSPLUS /zwcms.com允许,不得盗链、盗用本站资源;不得复制或仿造本网站,不得在非 ECMSPLUS /zwcms.com所属的服务器上建立镜像, ECMSPLUS /zwcms.com对其自行开发的或和他人共同开发的所有内容、技术手段和服务拥有全部知识产权,任何人不得侵害或破坏,也不得擅自使用。
6、互联网的本质是自由与分享,我们真诚的希望,每一份有价值的正能量能够在互联网中自由传播,能够为每一个网站提供动力。
评论(3)
欢迎您光临1pma.cn,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!
?
?普通用户