首頁  >  文章  >  後端開發  >  兩種PHP實作網域授權的方法

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

小云云
小云云原創
2018-03-20 11:17:502678瀏覽

本文主要和大家分享兩種PHP實現網域授權的方法,希望能幫助大家。

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

用戶端程式碼:


PHP

<?php//获取不带端口号的域名前缀$servername = trim($_SERVER[&#39;SERVER_NAME&#39;]);
//获取服务端授权文件校验$verifyurl = file_get_contents(&#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

<?phpfunction 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中文網其他相關文章!

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