PHP实现域名授权的方法:首先获取不带端口号的域名前缀;然后获取服务端授权文件校验;接着在服务端代码文件中通过“$_GET”获取域名;最后授权域名列表并检验结果即可。

PHP怎么实现域名授权?
01. 在线校验域名授权的方法:
客户端代码:
1 2 3 4 5 6 7 8 9 10 11 | <?php
$servername = trim( $_SERVER ['SERVER_NAME']);
$verifyurl = file_get_contents ('http:
if (! empty ( $verifyurl )){
echo "已授权!" ;
} else {
die ( "未授权!" );
}
?>
|
ログイン後にコピー
服务端代码:
1 2 3 4 5 6 7 8 | <?php
$domain = $_GET ['domain'];
$Array = array ('127.0.0.1','localhost');
echo in_array( $domain , $Array ) ? 'yes' : '';
?>
|
ログイン後にコピー
域名授权代码可封装进函数,或者进行加密,对于常用的PHP加密形式,都有其破解的方法,比如ZendGuard、ionCube等,如果授权的域名较多,可以在项目中增加域名字段,将域名写入数据库再进行读取和校验,此方法我们已发布成独立的插件,详见:ZBlogPHP域名授权插件-AllowURL, 通过插件可以将域名等信息添加到数据库中进行校验。
02. 独立校验域名授权的方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?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中文网!