首頁  >  文章  >  後端開發  >  php常用的授權方法有哪些

php常用的授權方法有哪些

藏色散人
藏色散人原創
2021-06-19 09:50:543573瀏覽

php常用的授權方法有:1.線上校驗網域授權的方法,程式碼如「file_get_contents('http://...copyright.php?domain='.$servername);」; 2、獨立校驗網域授權的方法。

php常用的授權方法有哪些

本文操作環境:Windows7系統、PHP7.1版,DELL G3電腦

PHP實作網域授權的兩種方法

01. 線上校驗網域授權的方法:

用戶端程式碼:

PHP

 

<?php
 
//获取不带端口号的域名前缀
 
$servername = trim($_SERVER[&#39;SERVER_NAME&#39;]);
 
//获取服务端授权文件校验
 
$verifyurl = file_get_contents(&#39;http://www.toyean.com/zb_users/upload/copyright.php?domain=&#39;.$servername);
 
if(!empty($verifyurl)){
 
echo "已授权!"; //授权成功
 
}else{
 
die("未授权!"); //授权失败
 
}
 
?>

服務端碼:

PHP

 

<?php
 
//获取域名
 
$domain = $_GET[&#39;domain&#39;];
 
//授权域名列表
 
$Array = array(&#39;127.0.0.1&#39;,&#39;localhost&#39;);
 
//校验结果
 
echo in_array($domain, $Array) ? &#39;yes&#39; : &#39;&#39;;
 
?>

網域授權程式碼可封裝進函數,或進行加密,對於常用的PHP加密形式,都有其破解的方法,例如ZendGuard、ionCube等,如果授權的域名較多,可以在項目中增加域名字段,將域名寫入數據庫再進行讀取和校驗,此方法我們已發布成獨立的插件,詳見:ZBlogPHP域名授權插件-AllowURL, 透過外掛程式可以將網域名稱等資訊加入資料庫進行校驗。

 

02. 獨立校驗網域授權的方法:

PHP

 

<?php
 
function allow_domain(){
 
$is_allow=false;
 
//获取不带端口号的域名前缀
 
$servername=trim($_SERVER[&#39;SERVER_NAME&#39;]);
 
//授权域名列表
 
$Array=array("localhost","127.0.0.1");
 
//遍历数组
 
foreach($Array as $value){
 
$value=trim($value);
 
$domain=explode($value,$servername);
 
if(count($domain)>1){
 
$is_allow=true;
 
break;
 
}
 
}
 
if(!$is_allow){
 
die("域名未授权!"); //授权失败
 
}else{
 
echo "域名已授权!"; //授权成功
 
}
 
}
 
allow_domain();
 
?>

網域授權的目的在於保護智慧財產權,鼓勵開發者能發布更多優秀的作品,推動整個網路社會的文化發展與科技進步,有著十分重要的意義。

推薦學習:《PHP影片教學

以上是php常用的授權方法有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn