我正在研究PHP安全最佳实践,特别是HTML Purifier库.
我喜欢使用第三方库来帮助加强我网站的安全性,但我对一些事情感到困惑......
首先,一个普遍的问题...... HTML Purifier的做法是什么,实践安全的PHP编程不能?
如果我正在使用HTML Purifier,这是否意味着我可以跳过常见的安全措施,例如使用PHP函数来过滤输入和转义输出?
这个问题的回复评论之一似乎表明只有允许HTML标签的元素(例如WYSIWYG编辑器)才需要HTML Purifier.它是否正确?
有没有人注意到使用HTML Purifier的性能滞后?本文使性能影响值得考虑.
只是为了确认我已经完成了我的作业才问这个......
是否可以让htmlpurifier使用html5 doctype?
此处的文档指出您可以使用以下内容更改doctype和encoding:
<?php
require_once '/path/to/htmlpurifier/library/HTMLPurifier.auto.php';
$config = HTMLPurifier_Config::createDefault();
$config->set('Core', 'Encoding', 'ISO-8859-1'); // replace with your encoding
$config->set('HTML', 'Doctype', 'HTML 4.01 Transitional'); // replace with your doctype
$purifier = new HTMLPurifier($config);
$clean_html = $purifier->purify($dirty_html);
?>
Run Code Online (Sandbox Code Playgroud)
但是在安装说明中,这里说明支持的doctypes是:
256 Other supported doctypes include:
257
258 * HTML 4.01 Strict
259 * HTML 4.01 Transitional
260 * XHTML 1.0 Strict
261 * XHTML 1.0 Transitional
262 * XHTML 1.1
Run Code Online (Sandbox Code Playgroud)
是否可以执行以下操作以允许html5 doctype?
<?php
require_once '/path/to/htmlpurifier/library/HTMLPurifier.auto.php';
$config = HTMLPurifier_Config::createDefault();
$config->set('Core', 'Encoding', 'UTF-8'); …Run Code Online (Sandbox Code Playgroud)