PHP源码加密 给源码限制域名使用
3年前
/**********************************************************
第一,声明,这只是对不会php基础,只会改css html的朋友可以起作用
第二,可以多重加密 base64 或 php加密网加密各种
第三,你可以将限制域名代码与重要的函数等代码放在一起加密
第四,你可以将代码混入到thinkphp核心里引入,
当然控制器部分也要配置防止核心文件覆盖
第五,就这么说了,支持正版,再美的小三永远不是老婆(正房)...
***********************************************************/
//第一步,先在配置文件做个输入授权码界面,这个你们自己定
//我做了一个,见最下面的图,主要为了授权购买你的源码的人
/**************************授权码********************************/
'sqm' => '89df4c1392c08288bf719ace3d3097f1',
/**************************授权码********************************/
//下面我们在thinkphp的公共文件或控制器,或核心文件里加入以下代码
//只要不影响代码执行就可以了
//说一下原理 取服务器当前域名给MD5加密后与授权码对比
//诺是一样,就不作任何处理,不一致则exit();
function sqm($host){
$MD5 = md5(md5($host."riced.cn"));
$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."riced.cn"));
//引文件问题,我写个引入配置,如果在控制器就写C()方法
$Conf=include "Conf/sqm.php";
$sqm = $Conf['sqm'];
//给用户输入的授权码对比,如果正解则生成$_SESSION,
//当下次执行直接以$_SESSION,源码加密哈,不是找明文,不然谁也会破解了
if($MD5!=$sqm){
exit("授权码错误 <a href='/admin.php/Index-sqm.html'>点击这里输入授权码</a>");
}else{
$_SESSION['sqm']=$sqm;
}
}
}
}
/**************************授权码生成********************************/
//我是二次MD5加密的 后面我加了 "huue.cc"
//那么代码是 MD5(MD5('127.0.0.31huue.cc'))
//不看源码你能猜到,除非纯MD5加密 后来加些字符哈
//累不累啊,真累,防也累,破也累,累完了睡觉觉,支持请点我赞,勿吐曹!
/**************************授权码生成********************************/
//=============================================