发新帖

靠谱!织梦怎么设置上传图片自动到七牛

[复制链接]
2191 0

欢迎访问钉钉部署社区,本站发帖提问钉钉部署,部署老师必答!钉钉部署24h热线:0312-4173206

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
大家都知道,网站内容多了如果访问量上去以后是很吃带宽的,解决方法通常是使用CDN或者升级带宽,当然我们可以从根源上来做文章,那就是在上传图片的时候直接存储到云端,以后加载图片也就不经过我们服务器了,统一从云端下载,这样可以有效缓解本地服务器的带宽压力和节省服务器本地磁盘容量,达到节省服务器成本的目的。但是你可能会问,存储到云端不花钱吗?我只能说,你问的好!我仔细对比了一下子,发现云存储的花费比我们直接升级服务器要便宜一点,当然我说这话是基于我使用的是阿里云服务器,其他的百度云 腾讯云产品我没有接触过,这里不做定论。这几天在网络上物色了几个平台,都是做云存储服务的,阿里云OSS、又拍云、七牛云等等,在查看了百度知道、知乎等评论以后,决定使用七牛云,原因是:七牛有免费的10G存储空间和10G的流量,对于小站来说,如果你网站内容和访问量不是很大,这个免费的资源是很适合你的。本文主要是借鉴了织梦js网发布的一篇整合攻略,加了一点我自己的体会整理出来的,因为原文是2015年发布的,但是经过3年的发展,现在七牛平台的变化还是蛮大的,原教程的截图和路径很多地方已经对应不上了,所以我就想着重新整理一篇教程,帮助大家快速的把织梦接入七牛,好了,下面我们开始吧!
①注册七牛帐号,创建空间
点击下面的地址注册七牛帐号

https://portal.qiniu.com/signup?code=3lqll915pxtua

点开以后选择个人或者企业都可以,如果是企业的话七牛给的免费资源会多一点。
说实话,注册七牛帐号挺简单的,但是必须通过实名认证以后才可以创建空间和使用其他功能,官网给出的认证分2种:一是支付宝认证,二是银行转帐。
关于认证我必须强调一点:如果注册的时候选择的是企业,那认证采用支付宝的话必须用企业支付宝,如果你采用个人支付宝认证,支付宝会提示你认证成功,但是七牛会报错说你要用企业支付宝认证才行。当你重新认证的时候会遇到一个问题,就是七牛页面逻辑上的死循环,解决方法是,访问支付宝官网,退出当前账号,然后回到七牛页面重新认证,这时就可以授权企业支付宝认证了。
支付宝或者银行转帐的方式认证成功后,会进入到官方审核状态,整个审核过程大概是1个小时左右,官方就会发短信告诉你审核结果。而这中间的时间段内你是无法进行任何功能上的操作的,这一点有点尴尬,毕竟等待是一件非常折磨人的事情!
我们继续,审核通过以后,就可以添加空间了,
进入七牛的这个管理控制台,或者你在官网首页可以点击如图所以的位置进入

点击左侧的对象存储,或者列表里面的对象存储-立即添加按钮【七牛网站可能会改版,记住是在对象存储里面】,就进到添加空间的页面了,左侧新建存储空间就是添加新的,如果之前有添加过会显示在存储空间列表里面。

目前这个新建页面一共有3项需要我们填写,存储空间名称也就是Bucket,存储区域最好选择和你现在所用的服务器所在区域距离近点的,访问控制选择公开空间,然后点击确定创建。


接下来就是设置一下你创建好的空间里面的各个参数了,最重要的就是绑定加速域名这一项了。


关于绑定域名这一环节,其实是很纠结的,纠结点在于这里不是填写你的网站,而是填写你图片要存放的网站,是不是有点蒙?这么说吧!
假如这里你填写的是你的网站,那你要通过CNAME把域名解析到七牛,然后通过七牛配置源站,如果你源站设置的是七牛云存储,那么你的网站当然就没法访问了。
通常情况下,我们是通过A记录把域名解析到服务器IP,然后在服务器上配置域名信息,这样互相指向以后网站才能访问。
而CNAME记录是把域名解析到另一个域名,再通过另一个域名做配置,如果不配置到你服务器IP上,那么网站是无法访问的。
明白这一点以后就好办了,我们可以解析一个新的域名,然后把图片都存放在这个新域名上【下面有教程】,把这个域名解析到七牛,去七牛平台配置这个新域名为加速域名。举个例子你就明白了:假设你的网站是www.abc.com已经通过A记录解析到了服务器,再使用该域名绑定七牛的自定义域名,会导致不能正常访问。所以这里我们绑定一个二级域名:img.abc.com具体操作流程是,点击七牛网站的绑定域名--新建加速域名,在加速域名这一项里填写
img.abc.com使用场景选择小图片小文件,源站配置选择七牛云存储,其他项默认不用管,点击创建按钮。


创建后控制台会回到存储空间页面【存储空间的名字就是上面你刚设置的那个】,可以在 融合 CDN 加速域名 区域看到刚才我们添加的 img.abc.com 域名,状态为 处理中。
进入域名信息界面(点击加速域名后会直接跳转),域名信息一栏显示:域名正在创建处理中;域名配置完成后会显示 CNAME
这里我们耐心等待一下,我测试了一下,通常10分钟就可以处理完毕,最久不会超过12小时(如果超时的话可以直接提交工单)。
域名处理完成后,我们已经可以看到 CNAME 后面已经有了内容,比如:xxxxxxxxx.qiniudns.com

接下来要处理的就是登录你的域名服务商,去通过CNAME解析这个新域名了(img.abc.com),这里说的域名服务商指的是你购买域名的地方,通常情况下是阿里云【万网】、腾讯云等平台。这里还是举个例子,拿阿里云操作域名来说,如图

在你要操作的域名这一行结尾,点击解析按钮,再点击添加解析,如图


记录类型里面,点击结尾的小箭头,选择CNAME。

然后在主机记录填写主域名前面的部分(img.abc.com 这里的主机记录内容为 img)
记录值在 融合 CDN 栏目的域名信息中可查到,上文中有提到,注意看我标出来的颜色(
比如:xxxxxxxxx.qiniudns.com

完了点击确认按钮,等个10来分钟,这个是有延迟的,一般10分钟左右就生效了。10分钟左右你可以ping一下这个刚解析的域名,看看返回的值。
域名解析成功后,在七牛网站加速域名列表查看域名信息,成功的话会看到 发布成功。

②集成七牛SDK
下载下面的SDK压缩包,将压缩包里面的qiniu文件夹解压出来。
七牛SDK下载
密码: cn4a

打开里面的conf.php文件,可以看到这里需要我们填写AccessKey和SecretKey两个值,这2个值填什么呢,回到七牛网站的管理控制台,点击左侧的个人中心,然后点击密钥管理,就可以看到AK和SK了,注意SK需要点一下结尾的显示按钮,才能看到,把这2个值填到刚才的
conf.php文件里保存即可。

保存后将整个qiniu文件夹上传到织梦include目录下即可完成SDK的集成安装!集成七牛SDK之后就可以进行下一步了。
③修改织梦图片上传代码
织梦默认的编辑器有图片上传、多媒体文件上传以及附件上传,因为时间关系,我们仅以图片上传为例来讲解,多媒体以及附件的上传修改都是差不多的,大家自行修改即可。
首先打开/include/dialog/select_images.php文件,在里面找到如下代码:
$dh = dir($inpath);
在其下面添加下面这句代码:
$qiniudomain = '七牛云存储域名';
注意:将里面的“七牛云存储域名”替换为你自己设置的域名,对应上面那个例子里面的img.abc.com。注意在域名前面加一下http://
然后在里面查找如下代码:
$reurl = $reurl;
全部替换为如下代码【应该是有2处】
$reurl = $qiniudomain.$reurl;
修改完成后再打开/include/dialog/select_images_post.php文件,在里面找到下面这句代码:
$info = '';
在其上面 添加如下代码:
//上传到七牛云存储start
require_once(dirname(__FILE__)."/../qiniu/io.php");
require_once(dirname(__FILE__)."/../qiniu/rs.php");
$qiniupath = substr($activepath,1);
$bucket = '云空间名';
$qiniudomain = '七牛云存储域名';
$key = $qiniupath."/".$filename;
$client = new Qiniu_MacHttpClient(null);
$putPolicy = new Qiniu_RS_PutPolicy("$bucket:$key");
$upToken = $putPolicy->Token(null);
$putExtra = new Qiniu_PutExtra();
$s = time();
list($ret, $err) = Qiniu_PutFile($upToken, $key, $fullfilename, $putExtra);
//上传到七牛云存储end
注意:将里面的“云空间名”修改为刚刚创建的空间名称,“七牛云存储域名”替换为你的域名。注意在域名前面加一下http://
然后在里面找到如下代码:
''.$fileurl.''
将其修改为如下代码:
''.$qiniudomain.$fileurl.''
修改完成后保存即可,再去后台用编辑器上传图片,就会发现返回的图片路径都是七牛云存储的图片路径了,这样就实现了完美的整合,利用同样的修改方法,大家可以自己修改一下select_media.php、select_soft.php以及select_soft_post.php文件,这样就能实现图片、多媒体以及附件上传全部同步到七牛云存储了。





注意一:加速的网站域名要先完成备案才可以在七牛平台操作哦。
注意二:需要注意的一个问题是我们需要在后台——系统——系统基本参数——其他选项  里面将“远程图片本地化”设置为否,不然我们用的七牛的路径就会全部转换为服务器本地文件。
注意三:如果以后对之前发布的文章进行编辑修改,织梦系统默认有个勾选项是下载图片到本地,记得要去掉这个勾,要不就做无用功了。

原文链接:http://news.zcypai.com/news/zimeiti/2018/0126/61.html
如有侵权,联系管理员删除,谢谢!
无聊,除了天天弄网站,白之家您还会干什么嘛...

举报 使用道具

回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

钉钉部署和网站SEO电话
136-6130-5028

更多

客服中心

0312-4173206 周一至周日8:30-20:30 仅收市话费

快速回复 返回顶部 返回列表