給主題加上一個(gè)PHP域名授權(quán)
給主題加上一個(gè)PHP域名授權(quán)最近思考了一下wordpress主題怎么加授權(quán),我最先是想到了JS判斷域名的方式來實(shí)現(xiàn)授權(quán),然而這想法很快就被刷掉了,因?yàn)镴S授權(quán)容易被破解,只要一個(gè)審查元素即可,然后我又想到了PHP授權(quán),這就比較安全了,因?yàn)镻HP有多種加密方式,解密起來也要花很大功
給主題加上一個(gè)PHP域名授權(quán)最近思考了一下wordpress主題怎么加授權(quán),我最先是想到了JS判斷域名的方式來實(shí)現(xiàn)授權(quán),然而這想法很快就被刷掉了,因?yàn)镴S授權(quán)容易被破解,只要一個(gè)審查元素即可,然后我又想到了PHP授權(quán),這就比較安全了,因?yàn)镻HP有多種加密方式,解密起來也要花很大功
最近思考了一下wordpress主題怎么加授權(quán),我最先是想到了JS判斷域名的方式來實(shí)現(xiàn)授權(quán),然而這想法很快就被刷掉了,因?yàn)镴S授權(quán)容易被破解,只要一個(gè)審查元素即可,然后我又想到了PHP授權(quán),這就比較安全了,因?yàn)镻HP有多種加密方式,解密起來也要花很大功夫,只要就隔絕了很多人想破解主題的念頭,php授權(quán)域名的思路如下
云端校驗(yàn)域名授權(quán)
客戶端代碼:
<?php
$shouname = trim($_SERVER['SERVER_NAME']); //獲取域名
$shouurl = file_get_contents('https://www.ikxin.com/shouquan.php?domain='.$shouname); //獲取服務(wù)端授權(quán)文件
if(!empty($shouurl)){
echo "已授權(quán)!"; //授權(quán)成功
}else{
die("未授權(quán)!"); //授權(quán)失敗
}
?>
服務(wù)端代碼:
<?php
$domain = $_GET['domain']; //獲取域名
$Array = array('127.0.0.1','localhost','www.ikxin.com'); //授權(quán)域名列表
echo in_array($domain, $Array) ? 'yes' : ''; //校驗(yàn)結(jié)果
?>
域名授權(quán)代碼可封裝進(jìn)函數(shù),或者進(jìn)行加密,對(duì)于常用的PHP加密形式,都有其破解的方法,比如Zend、mzphp2、ionCube等,如果授權(quán)的域名較多,可以在項(xiàng)目中增加域名字段,將域名寫入數(shù)據(jù)庫再進(jìn)行讀取和校驗(yàn)。
獨(dú)立校驗(yàn)域名授權(quán)
<?php
function allow_domain(){
$is_allow=false;
//獲取不帶端口號(hào)的域名前綴
$servername=trim($_SERVER['SERVER_NAME']);
//授權(quán)域名列表
$Array=array("localhost","127.0.0.1");
//遍歷數(shù)組
foreach($Array as $value){
$value=trim($value);
$domain=explode($value,$servername);
if(count($domain)>1){
$is_allow=true;
break;
}
}
if(!$is_allow){
die("域名未授權(quán)!"); //授權(quán)失敗
}else{
echo "域名已授權(quán)!"; //授權(quán)成功
}
}
allow_domain();
?>
以上方法推薦使用第一種,因?yàn)榈谝环N便于管理,將客戶端代碼寫到wordpress主題全局PHP函數(shù)文件即可,然后再自己的服務(wù)端配置好域名授權(quán),客戶端的PHP文件可以自行加密,當(dāng)然了,世界上沒有無法解密的PHP代碼。
版權(quán)所有:深圳市網(wǎng)商在線科技有限公司