【推荐】PHP源码加密 给源码限制域名使用

jerry thinkphp 2015年11月19日 收藏
【推荐】PHP源码加密 给源码限制域名使用
//=============================================
//本代码并非完美,也许存在不良之处,高手请多指点,请勿吐槽!
//作者 小曾 Qq839024615 可加我一起交流
//=============================================

/**********************************************************
第一,声明,这只是对不会php基础,只会改css html的朋友可以起作用
第二,可以多重加密 base64 或 php加密网加密各种
第三,你可以将限制域名代码与重要的函数等代码放在一起加密
第四,你可以将代码混入到thinkphp核心里引入,
       当然控制器部分也要配置防止核心文件覆盖
第五,就这么说了,支持正版,再美的小三永远不是老婆(正房)...
***********************************************************/

//第一步,先在配置文件做个输入授权码界面,这个你们自己定
//我做了一个,见最下面的图,主要为了授权购买你的源码的人

/**************************授权码********************************/

'sqm' => '89df4c1392c08288bf719ace3d3097f1',

/**************************授权码********************************/


//下面我们在thinkphp的公共文件或控制器,或核心文件里加入以下代码
//只要不影响代码执行就可以了
//说一下原理  取服务器当前域名给MD5加密后与授权码对比
//诺是一样,就不作任何处理,不一致则exit();

function sqm($host){

    $MD5 = md5(md5($host."yun8888.net"));
    $arr=include "Conf/sqm.php";
    $sqm = $arr['sqm'];
    if($MD5!=$sqm){
        exit("授权码错误  <a href='/admin.php/Index-sqm.html'>点击这里输入授权码</a>");    
    }else{
        $_SESSION['sqm']=$sqm;
    }    
}

//开启session 防止在部分文件中无效
session_start();

//取完整URL 请用php原码代码 防止在部分文件中代码失效比如 __URL__等等
$url='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

//取域名
$host=$_SERVER['SERVER_NAME'];

//先判断是否有SESSION存在,当然现在是明文,写完再全部加密处理
if(@$_SESSION['sqm']==""){

        //在本地主机中不执行域名限制 如127.0.0.1 localhost
    if(($host=='127.0.0.1') or ($host=='localhost')){
        //本地主机中不执行
    }else{
                //这里我给登陆模块还有输入授权码这里不限制
        $g1 = (int)strpos($url,'sqm');
        $g2 = (int)strpos($url,'Login');
        if($g1 or $g2){
            //登陆模块不执行
        }else{
                        //先给本机域名加密加密再加密,不要直接用域名加密,在域名的后台+点字符
            $MD5 = md5(md5($host."yun8888.net"));
                        //引文件问题,我写个引入配置,如果在控制器就写C()方法
                        $Conf=include "Conf/sqm.php";
                        $sqm = $Conf['sqm'];
                        //给用户输入的授权码对比,如果正解则生成$_SESSION,
                        //当下次执行直接以$_SESSION,源码加密哈,不是找明文,不然谁也会po,jie了
                        if($MD5!=$sqm){
                               exit("授权码错误  <a href='/admin.php/Index-sqm.html'>点击这里输入授权码</a>");    
                    }else{
                       $_SESSION['sqm']=$sqm;
                    }    
        }
    }
}

/**************************授权码生成********************************/

//我是二次MD5加密的 后面我加了 "yun8888.net"
//那么代码是 MD5(MD5('127.0.0.31yun8888.net'))
//结果为 89df4c1392c08288bf719ace3d3097f1
//不看源码你能猜到,除非纯MD5加密 后来加些字符哈
//累不累啊,真累,防也累,破也累,累完了睡觉觉,支持请点我赞,勿吐曹!

/**************************授权码生成********************************/



//=============================================
//本代码并非完美,也许存在不良之处,高手请多指点,请勿吐槽!
//作者 小曾 Qq839024615 可加我一起交流
//=============================================