当前位置:编程学习 > 网站相关 >>

discuz! X1.5、X2系列 本地附件与远程附件的转换

=============Discuz!x1.5=============

由于最近论坛上很多用户问及附件转移问题,所以现在总结下 有关远程附件转移的注意事项

1.首先将 data下attachment的文件夹移动到远程服务器上

2.后台配置远程附件,(确保ftp空间商提供的域名能够直接访问空间)如图:
1.jpg 

3.更改数据库,其中需要更改的表有五个。分别为:
pre_forum_attachment
pre_home_pic
pre_portal_article_title
pre_portal_attachment
pre_portal_topic_pic

执行更新语句:其中,pre_forum_attachment,pre_portal_article_title,pre_portal_attachment,pre_portal_topic_pic
语句为:

update pre_forum_attachment set remote=1;
update pre_portal_article_title set remote=1;
update pre_portal_attachment set remote=1;
update pre_portal_topic_pic set remote=1;

由于相册表中的remote取值还有一种情况为remote=2(论坛附件图片保存到相册)
pre_home_pic: update pre_home_pic set remote=remote+1;

注意:执行语句前,请备份数据库

===========Discuz!X2以上版本===========
由于X2 版本的程序已经将附件表进行拆分。所以在进行转换的时候 需要每个附件表进行处理
forum_attachment_0 至 forum_attachment_9 这10个表都要执行

update pre_forum_attachment_0 set remote =remote +1

其它表的转换和X1.5一样。
如果是远程附件转换到本地。先将附件复制到本地服务器的 data/attachment目录 然后 ,再执行 update( 对每个remote 进行  -1):如 update pre_forum_attachment_0 set remote =remote -1


注意以下事项:
1,上传设置里-基本设置:
这个位置一定不要和远程的位置相同。【我是用的自己的LINUX服务器,把NAS通过NFS的服务挂载到服务器的目录上。我开始时这里采用的是默认设置,这样就和远程附件实际上指定到同一地方了,在下载时在./data/attachment下产生了大量临时文件,且不能自动删除;后来我在论坛根目录下手工建立了一个目录】

远程附件-01.jpg


2,
1602442rr23nizz7rh66l3.jpg


此图中‘远程访问URL’我先前用的是FTP时,会产生大量临时文件------放弃。后来用HTTP测试正常,走http是走服务器负载,这样会加重论坛服务器负载

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,