不想被别人直接利用怎么办?首先想到的是加密,但是现在除了Zend 5加密之外其他加密方式都很脆弱,仍然很难破解。即使你不破解,恶意的人也可以用你的源代码建一个和你一模一样的网站。这不是让你的劳动成果被别人白白占用。这里有一个限制域名的方法,保护你的源代码不被直接复制运行。

如何通过程序限制域名来保护源代码?比如,你做的网站将来会用www.888slw.com。PHP程序丢了,就算别人用你的PHP源代码,域名不正确也不行。同时会对源代码进行加密,做到万无一失。

PHP程序限制域名的源代码如下:

下面分享一下实现代码。

1.限制域名访问的方法1

<?php 
if(!in_array($_SERVER['HTTP_HOST'],array('test.com','www.test.com'))){
	exit('建站请联系:http://www.test.com');
} 
?>

2、限制域名访问方法二

function allow_domain(){
	$is_allow=false;
	$servername=trim($_SERVER['SERVER_NAME']);
	$Array=array("localhost","127.0.0.1","test.com","test1.com");
	foreach($Array as $value){
		$value=trim($value);
		$domain=explode($value,$servername);
		if(count($domain)>1){
			$is_allow=true;
			break;
		}
	}
	if(!$is_allow){
		die("<center>仅限本地使用!需要域名授权请联系jb51.net");
	}
}
allow_domain();

然后用zend加密,其他加密容易被破解。

PHP实现域名授权的两种方法

01. 在线校验域名授权的方法:

客户端代码:

PHP限制域名访问的实现代码(域名授权)
<?php
//获取不带端口号的域名前缀
$servername = trim($_SERVER['SERVER_NAME']);
//获取服务端授权文件校验
$verifyurl = file_get_contents('//www.nhooo.com/zb_users/upload/copyright.php?domain='.$servername);
if(!empty($verifyurl)){
	echo "已授权!"; //授权成功
}else{
	die("未授权!"); //授权失败
}
?>

服务端代码:

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

域名授权码可以封装到函数中,也可以加密。对于PHP加密的常见形式,有破解的方法,比如ZendGuard和ionCube。如果有很多授权的域名,可以在项目中添加一个域名字段,将域名写入数据库中进行读取和验证。我们已经将这个方法作为独立的插件发布了。具体见:ZBlogPHP域名授权插件-AllowURL,通过它可以将域名等信息添加到数据库中进行验证。

02. 独立校验域名授权的方法:

<?php
function allow_domain(){
	$is_allow=false;
	//获取不带端口号的域名前缀
	$servername=trim($_SERVER['SERVER_NAME']);
	//授权域名列表
	$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();
?>

 

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。