【fastadmin安全篇】设置全局 HtmlPurifier 安全过滤

xiaopang996 2月前 235

首先下载HtmlPurifier 链接:https://github.com/ezyang/htmlpurifier
解压把文件放到
image.png
打开文件

vendor/HtmlPurifier/library/HTMLPurifier.auto.php

修改代码为

<?php

namespace think;
class xssFilter{

    public function __construct()
    {
        /**
         * This is a stub include that automatically configures the include path.
         */
        
        set_include_path(dirname(__FILE__) . PATH_SEPARATOR . get_include_path() );
        require_once '../../vendor/HtmlPurifier/library/HTMLPurifier/Bootstrap.php';
        require_once '../../vendor/HtmlPurifier/library/HTMLPurifier.autoload.php';
        
        // vim: et sw=4 sts=4
    }    
}

打开

application/common/behavior/Common.php

最上方引入

use think\xssFilter;

在最后加入

/*
 * xss安全过滤
 */
    function wholeXssFilter($string) {
        $xssfilter=new xssFilter();
        $config = \HTMLPurifier_Config::createDefault();
        $purifier = new \HTMLPurifier($config);
        $clean_html = $purifier->purify($string);
        return $clean_html;
    } 

image.png
然后打开application/config.php
大约47行的位置

    // 默认全局过滤方法 用逗号分隔多个
    'default_filter'         => 'wholeXssFilter,htmlspecialchars',

image.png

最后于 2月前 被xiaopang996编辑
感谢以下的小伙的赞赏支持
最新回复 (3)
  • Stranger 2月前
    感谢TA
    0 引用 2

    感谢分享

  • F4NNIU 打赏 2月前
    感谢TA
    0 引用 3

    感谢分享,已经打赏。

  • lh800 2月前
    感谢TA
    0 引用 4

    image.png
    用过之后发现背景颜色变了,而且刷新后台右侧菜单无法显示。

  • 未登录
    5
返回