【发布时间】:2014-06-03 22:21:48
【问题描述】:
我在我的网站上集成了 Redactor(一个所见即所得的编辑器),它输出 HTML 而不是 BBCode 或 Markdown。我需要允许以下标签,因为它使用它们进行格式化:
<code><span><div><label><a><br><p><b><i><del><strike><u><img><video><audio><iframe><object><embed><param><blockquote><mark><cite><small><ul><ol><li><hr><dl><dt><dd><sup><sub><big><pre><code><figure><figcaption><strong><em><table><tr><td><th><tbody><thead><tfoot><h1><h2><h3><h4><h5><h6>
根据我在这里阅读和被告知的内容,为了安全地显示内容,我应该将原始数据存储在我的数据库中,以及我将实际输出的经过净化的版本(由 HTML Purifier 输出) (如果在清理时出现任何问题,则存在未经清理的版本)。
我的问题是,我应该也对数据调用strip_tags()(将上述标签作为允许的标签参数传递),还是应该直接将其传递给 HTML Purifier?
【问题讨论】:
-
您可以为 htmlpurifier 设置一个带有 html 标签和属性的白名单。所以你不必先调用
strip_tag(),但也许先调用它会更快,所以htmlpurifier不必检查那么多html代码。
标签: php sanitization sanitize htmlpurifier