温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在php中实现域名授权

发布时间:2020-07-11 14:13:48 来源:亿速云 阅读:212 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关怎么在php中实现域名授权,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

php实现域名授权的方法:首先获取不带端口号的域名前缀;然后获取服务端授权文件校验;接着判断是否成功授权;最后获取域名并校验结果即可。

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

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

客户端代码:

PHP

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

服务端代码:

PHP

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

域名授权代码可封装进函数,或者进行加密,对于常用的PHP加密形式,都有其破解的方法,比如ZendGuard、ionCube等,如果授权的域名较多,可以在项目中增加域名字段,将域名写入数据库再进行读取和校验,此方法我们已发布成独立的插件,详见:ZBlogPHP域名授权插件-AllowURL, 通过插件可以将域名等信息添加到数据库中进行校验。

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

PHP

<?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中实现域名授权就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI