有没有办法阻止TinyMCE启用textareas的恶意代码?

问题描述:

有没有一种方法可以防止启用TinyMCE的textareas恶意代码?有没有办法阻止TinyMCE启用textareas的恶意代码?

+1

恩,你的意思是[TinyMCE](http://tinymce.moxiecode.com/)有什么可能吗?虽然我确实喜欢恶意TinyMice的概念...... = D – 2010-12-12 15:01:29

+0

是的,我的意思是TinyMCE。任何线索? – 2010-12-12 15:35:53

+0

Aww,TinyMice。多么可爱。 – 2010-12-12 15:37:42

当编辑器内容提交时,您应该对服务器端内容进行清理(即删除scriopt标记),以防止恶意代码保存到数据库中。

是,

你必须清理服务器端的代码,一个好的图书馆是PHP HTMLPurifier。 http://htmlpurifier.org/

HTMLPurifier的一个很酷的事情是,它具有与TinyMCE相同的声明HTML结构的方式。

<?php 

$config = HTMLPurifier_Config::createDefault(); 
$config->set('HTML','Allowed', 
    'a[href|rel|rev|target|title|style],' . 
    'b[style],'. 
    'br[clear],'. 
    'caption[style],'. 
    'center[style],'. 
    'col[align|charoff|span|valign|width],'. 
     'colgroup[align|charoff|span|valign|width],'. 
    'em[style],'. 
    'font[color|face|size|style],'. 
    'h1[align|style],'. 
    'hr[align|noshade|size|width|style],'. 
    'img[align|alt|border|height|hspace|src|vspace|width|style],'. 
    'li[type|value|style],'. 
    'ol[start|type|style],'. 
    'p[align|style],'. 
    'span[style],'. 
    'u[style],'. 
    'ul[type|style]'); 

// Block images coming from remote host 
$config->set('URI', 'DisableExternalResources', true); 

// Purify html 
$purifier = new HTMLPurifier($config); 

// Here you get the purified html 
$html = $purifier->purify($html);