小编跟大家带来一期php授权网站域名的一期教程,授权域名是指在互联网上进行网站或应用程序开发时,需要向特定的域名授予访问或使用权限的过程。域名授权可以限制其他域名对资源的访问,确保数据的安全性和合法性。
域名授权
1. 首先,确定需要授权的域名。这通常是指允许访问或使用你的网站或应用程序的域名。可以是单个域名,也可以是一组域名,甚至是通配符域名。
2. 其次,了解授权域名的填写规则。不同的开发平台或服务提供商可能有不同的规定,需要仔细查阅相关文档或官方指南。可以使用通配符(如*.zydown.com)来授权一组域名,也可以使用具体的域名(如www.zydown.com)进行授权。
3. 在填写授权域名时,需要注意域名的格式和语法。确保域名的正确性,避免因为拼写错误或格式问题导致授权失败或出现安全隐患。
4. 最后,将填写好的授权域名提交给相关的服务提供商或平台。他们就可以根据你提供的授权域名来验证和授权访问权限。
域名本地授权
域名本地授权是指在代码中直接获取到本地、或者在代码中填写的固定域名,前者和后者用法差不多。
这里跟大家例举几个演示:
<?php
/**
* 授权域名填写
*/
$domain = [
'zydown.com',//这里填写需要授权的主域名即可 列如:zydown.com
'baidu.com',
];
$currentDomain = $_SERVER['HTTP_HOST'];//获取当前域名
if (in_array($currentDomain, $domain)) {
echo "";
} else {
$parts = explode('.', $currentDomain);
$subDomain = implode('.', array_slice($parts, 0, -2));
$mainDomain = implode('.', array_slice($parts, -2));
$authorizedSubDomain = $subDomain . '.' . $mainDomain;
if (in_array($mainDomain, $domain) || in_array($authorizedSubDomain, $domain)) {
if (!in_array($authorizedSubDomain, $domain)) {
$domain[] = $authorizedSubDomain;
}
} else {
echo "<div style='font-size:16px; color:#ca2b2b; font-weight:bolder;'><h3>域名未授权, 联系QQ:2877741347</h3></div>";
exit();
}
}
/**
* 测试授权
* 正式授权中可删除
*/
echo '授权成功';// 测试授权
/**
* 下面填写授权成功后的执行代码
*/
// 执行代码
// 执行代码
// 执行代码
// 执行代码
在$domain
数组中自定义授权的域名就可以列如在$domain填写:'zydown.com','baidu.com','jd.com',
等等
这里的授权方式是用$domain
中的域名循环数组 再获取当前搭建的网站域名,再截取当前搭建的网站域名成为主域名
再判断域名是否和$domain
中的循环数组域名相等,相等可在代码中执行代码中填写执行代码,否则返回未授权提示。
以上代码实列可自行研究修改
远程域名授权
远程域名授权是指:在远程获取授权域名、授权码、时间、QQ等,这里远程域名授权是用curl
或 file_get_contents();
远程获取授权域名授权
远程授权实列
<?php
//秘钥
$authcode='e7971b0460dbf42bf06e27793250663f';
// getDoMain(strtolower($_SERVER["HTTP_HOST"]));//获取主域名 二级域名 和域名都可以使用
if( !isset($_SESSION["authcode"]) )
{
$query = curl_get("http://sq.zydown.com/api.php?act=query&host=" . getDoMain(strtolower($_SERVER["HTTP_HOST"])) . "&authcode=" . $authcode);
if( $query = json_decode($query, true) )
{
if( $query["code"] == 1 ) {
$_SESSION["authcode"] = $authcode;
}else{
exit( "<center>授权失败</center>" );
}
}
else
{
echo "连接服务器失败!authsystem error";
exit();
}
}
/** 定义ku_yun_curl_get代码 **/
function curl_get($url){
$ch=curl_init($url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Linux; U; Android 4.4.1; zh-cn; R815T Build/JOP40D) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/4.5 Mobile Safari/533.1');
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$content=curl_exec($ch);
curl_close($ch);
return($content);
}
// 获取主域名
function getDoMain($url)
{
if (empty($url)) {
return '';
}
if (strpos($url, 'http://') !== false) {
$url = str_replace('http://', '', $url);
}
if (strpos($url, 'https://') !== false) {
$url = str_replace('https://', '', $url);
}
$n = 0;
for ($i = 1; $i <= 3; $i++) {
$n = strpos($url, '/', $n);
$i != 3 && $n++;
}
$nn = strpos($url, '?');
$mix_num = min($n, $nn);
if ($mix_num > 0 || !empty($mix_num)) {
$url = mb_substr($url, 0, $mix_num);
}
$data = explode('.', $url);
$co_ta = count($data);
$no_tow = true;
$host_cn = 'com.cn,net.cn,org.cn,gov.cn';
$host_cn = explode(',', $host_cn);
foreach ($host_cn as $val) {
if (strpos($url, $val)) {
$no_tow = false;
}
}
$del = strpos($data[$co_ta - 1], '/');
if ($del > 0 || !empty($del)) {
$data[$co_ta - 1] = mb_substr($data[$co_ta - 1], 0, $del);
}
if ($no_tow == true) {
$host = $data[$co_ta - 2] . '.' . $data[$co_ta - 1];
} else {
$host = $data[$co_ta - 3] . '.' . $data[$co_ta - 2] . '.' . $data[$co_ta - 1];
}
return $host;
}
/** 把以上代码复制粘贴到你需要授权的程序代码里, **/
这里使用的curl远程请求授权信息,无论是远程检测授权、本地检测授权;是有很多方法的看自己的喜欢那一款了;一般授权检测都是需要加密。
这里推荐一个SG11-SG14免费加密平台
总结归纳
授权域名是指在互联网上进行网站或应用程序开发时,向特定的域名授予访问或使用权限的过程。在填写授权域名时,需要确定需要授权的域名,了解填写规则并确保域名的正确性。授权域名的设置对于数据安全、防止盗链、网络流量控制和满足合规要求都非常重要。通过正确设置授权域名,可以保护数据安全,维护品牌形象,提高网站性能,并避免法律风险。
今天的php授权先分享到这里了