fckeditor上传问题的解决

一、上传时报Invalid Request,问题解决在此:

  fckeditor编辑器上传文件出现invalid Request问题解决!

FCKConfig.LinkBrowseURL将其后面改为:

FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=File&Connector=' + encodeURIComponent( FCKConfig.BasePath + 'filemanager/connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ) ;

即增加了"?Type=File",同样,找到FCKConfig.LinkUploadURL修改为

FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/connectors/' + _QuickUploadLanguage + '/upload.'
+ _QuickUploadExtension+'?Type=File' ;

二、服务器上真正使用时,发现文件已经传上去了,进度条还是保持不变,问题解决在此:

http://blog.sina.com.cn/s/blog_568e66230100iemg.html

使用FCKeditor,在本地上传图片一切正常,但昨天晚上实际向网络服务器(Windows Server 2005)发送图片时,发送图像进度条一直在滚动,无法关闭,通过FTP服务器查看服务器,图片已经传送上去,但这个滚动条却无法结束。因为昨天晚上急着要把理事会员的图片送上网,所以采用FTP传送图片,然后使用<img src="/Upload/abcd.jpg" />这样的笨方法把图片全部搞定。

今天上午8点,开始研究这个问题,在网上查到了这样的帖子,原文如下:

最近有个项目用到FCKEditor,载了目前最新版的2.6.3,配置一切OK,调试状态一切OK,发布到服务器(windows server 2003 sp2),问题来了……
上传图片后页面左下脚出现脚本错误提示,点开可看到是“没有权限”的提示,并且上传窗口一直冻结在进度条状态(Upload in progess, please wait...),查阅多方资料,包括国外官方论坛上相关资料,无解。
困惑之余,突然发现图片上传并非没有成功,服务器上已存在被上传的文件,只是窗口一直被冻结在进度条状态,于是考虑到是不是脚本错误导致。
终于在源代码文件FileBrowser/FileWorkerBase.cs里找到这样一行代码:
Response.Write( @"(function(){var d=document.domain;while (true){try{var A=window.top.opener.document.domain;break;}catch(e) {};d=d.replace(/.*?(?:.|$)/,'');if (d.length==0) break;try{document.domain=d;}catch (e){break;}}})();" );
删除里面的 try{document.domain=d;}catch (e){break;} 后,重新编译,然后在项目里重新添加引用后,问题解决。

按照上述方法,问题真是解决了。注意编译的方法是:

进入FCKeditor.Net_2.6.3目录,使用VS2008打开FredCK.FCKeditorV2.vs2005.csproj,因为文件版本是VS2005的,所以问要不要转换(原版本有备份),选择是,文件打开。点击菜单“生成 > 配置管理器”,把“活动解决方案配置”由默认的“debug”改为“release”,点击“关闭”按钮。

然后再次点击菜单“生成 > 生成FredCK.FCKeditorV2.vs2005”,这时就自动生成了FredCK.FCKeditorV2.dll,并且生成在原来的位置即FCKeditor.Net_2.6.3/bin/release/2.0 目录内,把这个生成的文件复制并覆盖在服务器上 bin 目录的原来的文件,OKlahoma!

再来试一下网络上的FCKeditor上传图片功能,成功!

posted @ 2010-05-09 00:16  jetz  阅读(797)  评论(1编辑  收藏  举报