问题标签 [htmlpurifier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 如何正确使用 HTML Purifier?
我在我的 PHP 项目中使用HTML Purifier ,但无法让它与用户输入一起正常工作。
我让用户使用 WYSIWYG 编辑器(TinyMCE)输入 HTML,但每当用户输入 HTML 实体
(不间断空格)时,它都会作为这个奇怪的外来字符(Â
)保存到数据库中。
但是,问题是,当我使用 WYSIWYG 编辑器编辑保存的条目时,它会正确显示为
. 它在显示时也能正常工作,只是在源代码中它显示为一个真实的空格,而不是不间断的空格字符。
此外,在 MySQL 数据库中,它显示为奇怪的外来字符。
我阅读了有关Unicode 和 HTML Purifier的文档,并将我的数据库和网页编码更改为 UTF-8,但我仍然遇到不破坏空格字符的问题。其他 HTML 实体,例如<
and >
,被保存为<
and >
,但为什么不
呢?
php - 在 Zend_Loader 中包含 HTMLpurifier
我想将 HTMLpurifier 与 Zend 框架结合使用。我很想用 Zend_Loader 加载类及其文件。你将如何包括它?您会只使用 HTMLPurifier.auto.php 还是您知道更好的方法?
attributes - 如何使用 HTMLpurifier 将某些属性列入白名单?
如何使用 HTMLpurifier 将某些属性列入白名单?我希望 HTMLpurifier 删除所有其他不允许的属性。
php - HTML Purifier 选择性地吃掉特殊字符
针对 UTF-8 兼容的数据库使用 PHP。这是输入的方式。
- 用户在 textarea 中输入输入
- 用 javascript escape() 编码的文本区域
- 通过 HTTP post 传递
- 用 PHP rawurldecode() 解码
- 使用默认设置通过 HTMLPurifier
- 为 MySQL 转义并存储在数据库中
它以通常的方式出现,我在页面加载时运行 unescape() 。这是为了让人们可以直接从 Word 文档中复制和粘贴,并显示智能引号。
但是 HTMLPurifier 似乎正在破坏非 UTF-8 特殊字符,那些转义()到一个简单的 % 表达式的字符,比如 Ö,它转义到 %D6,而 smartquotes 转义到 %u2024 或其他东西并以这种方式进入数据库。它取出特殊字符和紧随其后的字符。
我需要在这个过程中改变一些东西。也许我需要改变很多事情。
我该怎么做才能不破坏特殊字符?
drupal - 关闭 htmlpurifier 升级消息
在 drupal 中,不断从 htmlpurifier 获得整个站点的升级消息,表明 4.0 可用。Ran 升级(上传文件并运行 update.php)但仍有消息。当我用谷歌搜索时,没有发现这个。
假设 maintenace 文件夹中的 flush.php 将刷新它的缓存(与 Drupal 缓存的其余部分不方便地分开),但尝试在浏览器中执行会出错。
升级失败或需要刷新缓存,或者只是关闭此消息。建议?
php - HTML Purifier - 净化什么?
我正在使用 HTML Purifier 来保护我的应用程序免受 XSS 攻击。目前我正在从 WYSIWYG 编辑器中净化内容,因为这是唯一允许用户使用 XHTML 标记的地方。
我的问题是,我是否应该在登录身份验证系统中的用户名和密码(或注册页面的输入字段,如电子邮件、姓名、地址等)上也使用 HTML Purifier?那里有XSS攻击的机会吗?
php - 允许使用 HTMLPurifier 嵌入/对象/参数 HTML 标签?
是否可以允许使用 HTMLPurifier 嵌入、对象和参数 HTML 标签?我试图允许嵌入 YouTube、Vimeo 等视频,但无论我尝试什么,它们总是被剥离。我明白这些是允许的风险标签。
如果不可能,PHP 有哪些其他 HTML 过滤选项?Tidy 似乎不是为过滤而设计的……是吗?而且 strip_tags() 并没有给我我正在寻找的控制级别——例如只允许某些属性。
谢谢你的帮助!
php - HTMLPurifier,检查整个 HTML 文档
我正在使用 HTMLPurifier 检查整个 HTML 文档中的 XSS。问题是它似乎去掉了任何不在<body>
标签内的东西。但是,我想保留一切,只需要注意严重的 XSS 攻击。
任何想法如何允许<HTML>
,<HEAD>
等<META>
?
php - 使用 HTML Purifier 停止指向自己网站的链接
我已经使用HTML 净化器清除了来自我面向公众的所见即所得编辑器的任何可疑内容。传入的 HTML 也会显示在网站的公共部分。
我已允许链接,并且我还自动以纯文本链接 URL(使用净化器)。
有没有办法允许外部链接,但禁止链接到同一个域?例如,我的域是 www.example.com
http://www.example.com/logout/不会被链接。
我正在考虑尽量减少来自恶意用户的任何干扰。我应该让我的注销链接成为一个带有 POST 键/值对的表单操作来阻止这种情况发生吗?
谢谢
php - 向 HTML Purifier 过滤器添加属性?
我试图在 HTML Purifier 过滤器中的元素中允许 rel 属性。我正在关注本指南http://htmlpurifier.org/docs/enduser-customize.html,这是我的代码:
但是,HTML 净化器仍在过滤掉所有 rel 属性......我有点困惑问题可能是什么。
当我使用:
我收到此错误:
注意:使用不推荐使用的 API:在第 1819行的文件中的
$config->set('Attr.AllowedRel', ...)
第 191行使用C:\wamp\www\neonet\application\modules\admin\controllers\IndexController.php
C:\wamp\www\neonet\library\My\htmlpurifier-4.0.0-standalone\HTMLPurifier.standalone.php
编辑:
新代码:
当我使用:
Rel 属性仍然被过滤。