ホームページ >バックエンド開発 >PHPの問題 >PHPソースコードにドメイン名認証を追加する方法

PHPソースコードにドメイン名認証を追加する方法

(*-*)浩
(*-*)浩オリジナル
2019-10-15 13:50:407798ブラウズ

php は Web 開発の分野で最も人気のある言語であり、開発プロジェクトにも最適です。多くの PHP 開発者は、これが今日世界で最高の開発言語であると言っています。PHP 開発プロジェクトは、非常に効率的です。現在、国内外を問わず、オープンソース フレームワーク、オープンソース CMS システム、オープンソース モール システムが多すぎるため、PHP エコシステムは非常に優れています。

PHPソースコードにドメイン名認証を追加する方法

プロジェクトをオープン ソースにしたい場合は、ソース コードに簡単な著作権保護を実装する必要があります。コードはオープン ソースにすることができますが、著作権と所有権はプロジェクトはあなたのものです。

ドメイン名認証コードは、関数にカプセル化するか、暗号化することができます。ZendGuard、ionCube など、一般的に使用される PHP 暗号化形式を解読する方法があります。認証されたドメイン名が多数ある場合は、では、プロジェクトにドメイン名フィールドを追加し、データベースにドメイン名を書き込み、それを読み取って検証することができます。このメソッドをクラスまたはプラグインにカプセル化できます。 (推奨される学習: PHP ビデオ チュートリアル )

学習できるように 2 つのコードを共有しましょう。

1. ドメイン名認可を独自に検証する方法:

function allow_domain(){
 
    $is_allow=false;
    //获取不带端口号的域名前缀
    $servername=trim($_SERVER['SERVER_NAME']);
    //授权域名列表
    $Array=array("www.yunmasucai.com","www.zzphp.cn");
    //遍历数组
    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();

2. ドメイン名認可をオンラインで検証する方法:

/*
 * 服务端代码
 */
//获取域名
$domain = $_GET['domain'];
//授权域名列表
$Array = array('www.yunmasucai.com','www.zzphp.cn');
//校验结果
echo in_array($domain, $Array) ? 'yes' : '';
 
/*
 * 客户端代码
 */
//获取不带端口号的域名前缀
$servername = trim($_SERVER['SERVER_NAME']);
//获取服务端授权文件校验
$verifyurl = file_get_contents('http://www.yunmasucai.com/data/upload/copyright.php?domain='.$servername);
if(!empty($verifyurl)){
    echo "已授权!"; //授权成功
}else{
    die("未授权!"); //授权失败
}

以上がPHPソースコードにドメイン名認証を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。