首页 > 开发 > 综合 > 正文

通过Fckeditor把图片上传到独立图片服务器的方法

2024-07-21 02:53:53
字体:
来源:转载
供稿:网友
大部分网站的后台,都是把图片上传到本地服务器上,但图片也消耗很多带宽,门户网站都有单独的图片服务器,怎么实现呢?
 

我大概思考了下有如下几种方法可以解决: 
1.在图片服务器上开通FTP,人为添加图片地址即可,但不方便,特别是在可视编辑器中看图还的多一部操作. 
2.在图片服务器上开通FTP,并提高IIS执行dosShell访问ftp,但是不安全. 
3.在图片服务器上开通IIS,WEB后台直接访问(还是存在在编辑器中不方便查看的问题,但可以用js控制上传后自动追加到HTML编辑窗口中) 
4.利用现有在线编辑器的上传程序来实现. 
第三,四种方法比较靠谱,但还需要解决跨域问题,第三种还要单独写程序,改动比较大,用第四种最理想. 
那么怎么样才能实现呢?我以前用的后台编辑器是dvbbs的后台编辑器,这次我改用FCKeditor,可我不是很熟悉,捣鼓了一天,终于试验成功了.方法如下: 
1.在图片服务器(img.vevb.com)和后台服务器(gl.cdbs.com.cn).上都安装FCKeditor.(实际上gl.cdbs.com.cn上只需要fckeditor.asp,因为asp不能include外网文件) 
2.在后台程序中设置sBasePath=http://img1.cdbs.com.cn/fckeditor/后,才建立编辑器).可以直接调用图片服务器的编辑器. 

复制代码代码如下:

<% 
Dim sBasePath 
sBasePath="http://img.vevb.com/fckeditor/" 
Dim oFCKeditor 
Set oFCKeditor = New FCKeditor 
oFCKeditor.BasePath = sBasePath 
oFCKeditor.Config("SkinPath") = sBasePath + "editor/skins/silver/" '设置皮肤 
'oFCKeditor.Width="80%" 
oFCKeditor.Height="400px" 
oFCKeditor.Value = "" 
oFCKeditor.Create "FCKeditor1" 
%> 

3.主要修改"img.vevb.com/FCKeidtor/fckconfig.js"文件 
复制代码代码如下:

var _FileBrowserLanguage = 'asp' ; // asp | aspx | cfm | lasso | perl | php | py 
var _QuickUploadLanguage = 'asp' ; // asp | aspx | cfm | lasso | perl | php | py 

4.修改"img.vevb.com/fckeditor/editor/filemanager/connectors/asp/config.asp"配置文件, 
ConfigIsEnabled = true '首先要开启配置. 
5.解决跨域访问.不过可以设置"document.domain='cdbs.com.cn';"来解决.域名完全不同也有相应的方法, 
6.还需要解决安全问题,这个可以通过跨站cookies来判断是否有权限上传(待完成). 
最终实现了,在后台编辑器中上传图片到相应的图片服务器,图片地址是相对地址,我们可以通过保存当前是哪组图片服务器来区分.例"新闻发布"等模块就可以这么做,但是对于其他模块如:图片展示模块,音乐专辑模块等,一个标题下就存在多个媒体文件,那么还是需要独立写程序来完成.那么又怎么实现了?


注:相关教程知识阅读请移步到编辑器频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表