解压码请关注微信公众号【izhe99】或爱站易资源网回复【解压码】获取

为自己的Emlog博客增加防护模式【爱站易资源网独创】

懒得说废话,直接进入教程!【ps:我是通过6.0版本修改,其他版本自己领会!

①找到网站根目录下面的init.php文件,在


//站点时区
date_default_timezone_set(Option::get('timezone'));


下面添加


//站点防护开关(1为开启,0关闭)
$webscan_switch= Option::get('webscan_switch');
$webscan_post= Option::get('webscan_post');
$webscan_get= Option::get('webscan_get');
$webscan_cookie= Option::get('webscan_cookie');
$webscan_referre= Option::get('webscan_referre');
$webscan_white_directory=Option::get('webscan_white_directory');
define('webscan_attack',	Option::get('attacks'));
require_once EMLOG_ROOT.'/include/lib/webscan.php';

blockIP_check();

doStripslashes();


$CACHE = Cache::getInstance();

$userData = array();

define('ISLOGIN',	LoginAuth::isLogin());


②在include/lib/function.base.php文件后面添加


/**
 * 小黑屋
 */
function blockIP_check()
{
        $flag = false;
        $ip = getIp();
        $iptable = getAllBlockIP();
        if ($iptable) {
            foreach ($iptable as $value) {
                if (preg_match("{$value}", $ip)) {
                    $flag = true;
                    emMsg("抱歉,你是不是对本站做了啥,才被关进了小黑屋,过段时间再试吧"); 
                    break;
                }
            }
        }
        return $flag;
}

function makePregIP($str)
{
        if (strpos($str, "-") !== false) {
            $aIP = explode(".", $str);
            foreach ($aIP as $key => $value) {
                if (strpos($value, "-") === false) {
                    if ($key == 0) {
                        $preg_limit .= makePregIP($value);
                    } else {
                        $preg_limit .= '.' .makePregIP($value);
                    }

                } else {
                    $aipNum = explode("-", $value);
                    for ($i = $aipNum[0]; $i <= $aipNum[1]; $i++) {
                        $preg .= $preg ? "|" . $i : "[" . $i;
                    }
                    $preg_limit .= strrpos($preg_limit, ".", 1) == (strlen($preg_limit) - 1) ? $preg . "]" : "." . $preg . "]";
                }
            }
        } else {
            $preg_limit .= $str;
        }
        return $preg_limit;
}

function getAllBlockIP()
{

        $blockips = Option::get('webscan_block_ip');
        if ($blockips) {
            $ip_array = explode(",", $blockips);
            foreach ($ip_array as $value) {
                $ipaddress = makePregIP($value);
                $ip = str_ireplace(".", "\.", $ipaddress);
                $ip = str_replace("*", "[0-9]{1,3}", $ip);
                $ipaddress = "/" . trim($ip) . "/";
                $ip_list[] = $ipaddress;
            }
        }
        return $ip_list;
}


③下载提供的附件上传到网站根目录,不要改动,不要改动,不要改动!

④需要往数据库添加写入网站防护数据仅限重新安装网站写入 打开install.php

DROP TABLE IF EXISTS {$db_prefix}link;


的前面加入


INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_log','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_switch','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_post','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_get','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_cookie','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_referre','0');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_white_directory','".$white."');
INSERT INTO {$db_prefix}options (option_name, option_value) VALUES ('webscan_block_ip','0.0.0.0');




往数据库写入的数据不要问我之前安装的程序,不想重装怎么写入,我也不懂,我也是半桶水,码在上面,自己找大神转换成数据库导入方式!

⑤需要在admin/views/header.php加入下面的代码,才能在后台显示(这个代码自己调试)



<li><a href="safety.php" id="menu_safety"><i class="fa fa-shield fa-fw"></i> 防护 </a></li>


提取码: 

此处解压码内容已隐藏,评论即可查看
 


作者:爱站易资源网
文章标题:为自己的Emlog博客增加防护模式【爱站易资源网独创】
版权说明:若无特别注明,本文皆为【 爱站易资源网 】 原创,转载请保留出处!
收录状态: [百度已收录] [360已收录] [搜狗已收录]
打赏
X
打赏方式:
  • 支付宝
  • 微信
  • QQ红包

打开支付宝扫一扫

相关推荐

分享

发表评论

路人甲
看不清楚?点图切换 Ctrl+Enter快速提交

网友评论(0)