时间:2021-07-01 10:21:17 帮助过:38人阅读
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中文网!
以上就是php如何实现域名授权的详细内容,更多请关注gxlcms其它相关文章!