FCKeditor上传设置

看大家要FCKeditor上传设置的部分,所以仔细找了下,以前看到别人说FCKeditor有上传漏洞,所以一直没有用过此功能!希望能够解决大家的问题!

因版本更新问题,可能具体行数不一致,请大家仔细修改!谢谢大家的关注!

FCKeditor目前已经更新到2.4.2版,详情请看官方http://www.fckeditor.net/

上传文件设置简洁
fckconfig.js
134 135 行
[code]
var _FileBrowserLanguage         = 'php' ;         // asp | aspx | cfm | lasso | perl | php | py   
var _QuickUploadLanguage         = 'php' ;         // asp | aspx | cfm | lasso | php[/code]
第一个是文件浏览器使用的语言,第二个快速上传使用的语言,改成你需要的。注释是参考值
139行:
[code]
var _FileBrowserExtension = _FileBrowserLanguage == 'perl' ? 'cgi' : _FileBrowserLanguage ;
[/code]
不要去管。

141行

[code]
FCKConfig.LinkBrowser = false ; 是否在链接功能里面启用服务器文件浏览功能[/code]
158 159的

[code]
FCKConfig.LinkUploadAllowedExtensions         = "" ;                         // empty for all
FCKConfig.LinkUploadDeniedExtensions =".(php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi)$"
[/code]
这是两个允许和拒绝上传的文件类型列表,注意是正则表达式,在这个文件里设置的扩展名列表是在客户端进行判断的。
相应的其他类型还有各自的列表
146

[code]
FCKConfig.ImageBrowser = false ;是否在插入图片功能里面启用服务器文件浏览功能
FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ;

[/code]
注意?Type=Image   表示文件类型是image这会使文件浏览器定位到文件上传路径/image/文件夹下面

[code]
FCKConfig.FlashBrowser = false ;是否在插入flash功能中启用服务器文件浏览功能
[/code]
相应的type=flash 不再多说
156
FCKConfig.LinkUpload = false ;是否启用插入链接的快速上传功能
161
FCKConfig.ImageUpload = false ;是否启用图片快速上传功能
166
FCKConfig.FlashUpload = false ;是否启用flash上传功能

服务器文件设置
文件浏览器的设置:
FCKeditor/editor/filemanager/browser/default/connectors/
asp/
config.asp设置
23 行

[code]
ConfigIsEnabled = true 决定是否启用文件浏览器。这个是在服务器上执行的
27行
ConfigUserFilesPath = "/test/upload/" 上传文件的路径(相对的)

[/code]

[code]
ConfigAllowedExtensions.Add         "File", ""
ConfigDeniedExtensions.Add         "File", "php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg|cgi"

ConfigAllowedExtensions.Add         "Image", "jpg|gif|jpeg|png|bmp"
ConfigDeniedExtensions.Add         "Image", ""

ConfigAllowedExtensions.Add         "Flash", "swf|fla"
ConfigDeniedExtensions.Add         "Flash", ""

ConfigAllowedExtensions.Add         "Media", "swf|fla|jpg|gif|jpeg|png|avi|mpg|mpeg|mp(1-4)|wma|wmv|wav|mid|midi|rmi|rm|ram|rmvb|mov|qt"
ConfigDeniedExtensions.Add         "Media", ""

[/code]
这是4个不同的filetype类型 分别对应了 前台编辑器的 插入链接 插入图片 插入flash 插入媒体 4个功能

[code]
connecter.asp中 最后一个函数 116行
Function IsAllowedType( resourceType )
         Dim oRE
         Set oRE         = New RegExp
         oRE.IgnoreCase         = True
         oRE.Global                 = True
         oRE.Pattern                 = "^(File|Image|Flash|Media)$" ‘这里也是文件类型
        
         IsAllowedType = oRE.Test( resourceType )
        
         Set oRE         = Nothing
End Function

[/code]
这里的文件类型与上面提到的两处文件类型是一致的要改必须许全改


快速上传:
FCKeditor/editor/filemanager/upload/
asp/
23 ConfigIsEnabled = False
是否启用快速上传
27   ConfigUserFilesPath = "/UserFiles/"
如果想上传到 /test/upload/yyymmdd/的文件夹下面
则修改为 ConfigUserFilesPath = "/test/upload/" & year(now())& right("0"& month(now()),2)&right("0" & day(now()),2)

php与asp 不同的地方

php上传设置

FCKeditor/editor/filemanager/browser/default/connectors/php下面
config.php

[code]
$Config['Enabled'] = true ; 启用上传

$Config['UserFilesPath'] = '/test/upload/' ; url显示出来的路径,

$Config['UserFilesAbsolutePath'] = 'e:/web/upload' ;服务器上的真实路径,建议配置上这个。否则可能出现失去响应的情况

[/code]
相应文件类型设置:39-40行
connector.php
71行

[code]
         if ( !in_array( $sResourceType, array('File','Image','Flash','Media') ) )
                 return ;

[/code]
表示文件类型

快速上传FCKeditor/editor/filemanager/upload/php
config.php

[code]
$Config['Enabled'] = true ;//启用

// Path to uploaded files relative to the document root.
$Config['UserFilesPath'] = '/test/upload/' ;这是url相对文档根

$Config['UserFilesAbsolutePath'] = 'e:/web/upload/' ;这才是服务器上的绝对路径 建议与上面u那个路径同时都配置上,如果出现了php上传没有反映的问题则可能是这个没有配置。

[/code]
说明
文件上传有两种模式,一种是服务器文件浏览模式,在该模式下可以浏览服务器上的文件,创建新文件夹。另一种是快速上传,在该模式下不能选择上传位置。

fck默认在文件浏览模式下文件路径是:你配置的服务器路径 + 文件类型 +当前文件夹 + 文件名
fck在快速上传模式下的文件路径是:你配置的服务器路径+文件名
可以看出少了一个文件类型名的文件夹

所以假如我们想把所有的文件都放在 一个名为 "upload" 的文件夹下面 那么你需要同时修改3个地方。这三个地方分别是上文提到的有type的地方,注意之修改文件浏览模式下的type设置即可

 
最近做了一个文章管理的系统,用到在线编辑器,修改了一下现在能实现音频,视频,图片,附件,Flash等文件的上传。费了好大的功夫。。 FCKeditor应用在ASP.NET上,需要两组文件,一组是FCKeditor本身,另一个是用于ASP.NET的FCKeditor控件(分为1.1和2.0两个版本,这里使用2.0版本)。 1. 将FCKeditor加入到项目中 解压FCKeditor编辑器,得到文件夹fckeditor,复制此文件夹到Web应用的项目下(也可以是子孙目录下)。 解压FCKeditor控件,在其子目录bin/Release/2.0下有一个程序集。在Web应用的项目中引用该程序集。 2. 在页面中使用FCKeditor 有两种方式。 (1)手工编码 在页面中加入ASP.NET指令: 然后在需要的地方加入FCKeditor控件: (2)集成到Visual Studio工具箱 打开一ASP.NET页面,展开Toolbox,打开右键菜单,选择“Choose Items ...”,在出现的“Choose Toolbox Items”会话框的“.NET Framework Components”选项卡中选择“Browse”,找到并选中FCKeditor程序集,打开后回到“Choose Toolbox Items”窗口,点击“OK”,完成控件导入。 这时,在Toolbox的General分类下出现了一个名为FCKeditor的控件,可以像使用Visual Studio内置控件一样使用它。 3. 配置FCKeditor编辑器路径 在页面中,使用的是FCKeditor控件,该控件需要知道FCKeditor编辑器文件组的路径。有两种配置方法。 (1)配置web.config 在appSettings配置节中加入 使用这种配置方法后,对于项目中任何一个页面中用到的FCKeditor控件,都不用再配置其BasePath属性。 (2)直接对用到的FCKeditor控件进行配置 在页面代码中设置FCKeditor的属性BasePath为FCKeditor编辑器文件组的路径,或者在Page_Init事件处理器中设置其BasePath的值。 4. 配置FCKeditor编辑器文件上传路径 在web.config的appSettings配置节中加入 或者 这样,就完成了FCKeditor向ASP.NET页面的集成工作。 二、配置FCKeditor 按照FCKeditor的默认配置,可以完成一些常用的HTML可视化编辑工作,但在实际应用中,还需要对其做进一步的配置。FCKeditor控件的可配置属性不多,且配置后只能作用于一个单一实例。实际上,需要对FCKeditor编辑器文件组中的通用配置文件/fckconfig.js和ASP.NET专用文件上传管理代码文件/editor/filemanager/connectors/aspx/config.ascx进行配置。 1. 配置控件语言 FCKeditor是自动探测浏览器所使用的语言编码的,其默认语言是英文。修改配置行"FCKConfig.DefaultLanguage = 'en';"为'zh-cn',采用中文为默认语言。 2. 配置控件应用技术 FCKeditor默认是用于php技术的。修改配置行"var _FileBrowserLanguage = 'php';"和"var _
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值