卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

简单的PHP域名授权访问代码(本地验证)

直观的PHP域名许可访问代码,减少了Zend 5加密,本地验证。通过程序限制域名从而维护源码,就算程序遗失了,其它人也没有播放采用你的php源码,如果推论的域名不恰当,也无法运行。

1、限制域名出访方法一

<?php
if(!in_array($_SERVER['HTTP_HOST'],array('www.11dz.cn','11dz.cn'))){
exit('非法出访,恳请联系:http://www.11dz.cn');
}
?>

2、限制域名访问方法二

function allow_domain(){
$is_allow=false;
$servername=trim($_SERVER['SERVER_NAME']);
$Array=array("localhost","127.0.0.1","www.11dz.cn","11dz.cn");
foreach($Array as $value){
$value=trim($value);
$domain=explode($value,$servername);
if(count($domain)>1){
$is_allow=true;
break;
}
}
if(!$is_allow){
die("
只限本地采用!需要域名授权请联系www.11dz.cn"); } } allow_domain();

然后用zend加密,其他加密难被化解。

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

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

客户端代码:

<?php
//以获取不带端口号的域名后缀
$servername = trim($_SERVER['SERVER_NAME']);
//以获取服务端许可文件校验
$verifyurl = file_get_contents('//www.11dz.cn/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();
?>

域名许可的目的在于维护知识产权,鼓励开发者能够发布更多优秀的作品,促进整个网络社会的文化发展与科技进步,有着十分重要的意义。

到此这篇关于PHP同时实现限制域名出访的同时实现代码(本地检验)的文章就介绍至这了。

卓越飞翔博客
上一篇: PHP自动Get监控网站是否在线
下一篇: php图片压缩裁剪处理方法
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏