öncelikle olayın mantığı; scriptin kodları arasında tüm sayfalarda çıkan bir dosyaya sahip olmanız gerekiyor. PHP bir yazılım için header.php , footer.php , config.php gibi dosyalar ve türevleri buna en uygun dosyalardır. Include yöntemi ile bu dosyaların içine lisans.php dosyasını çekebilirsiniz. Tabiki bu kodların birileri tarafından silinmemesi için kodlarınızı encode yapmanız gerekmektedir. Bunun için en uygun encode yöntemi ioncube programı ile yapılan encode yöntemidir. şu ana kadar çözen olamamıştır. çözdüğünü iddaa edenler yalan söylüyorlardır. Ioncube çözülememiştir,çözelmüşse bile kodlar bozuk bir şekilde çözülmüştür veya işlevini kaybetmiştir. Bu nedenle tavsiye edeceğim en iyi yöntem bu yöntemdir.
Tüm dosyalara include yöntemi ile eklediğiniz lisans.php dosyanızın bağlantı kurduğu bir lisans.txt dosyası vardır. Bu bağlantı işlemi sırasında lisans.txt dosyası dizininde bulunan domain adları lisans kullanımına izin verilen websitelerini içerir. Bu sayede listede olmayan domainlerde script çalışmayacaktır.
Aşağıda yer alan kodlar lisans.php dosyası içerisinde yer alacak kodlardır. örnekde görüldüğü gibi bu kodlar sayesinde lisans.txt dosyası ile bağlantı kuruyor ve bu bağlantının sonucuna göre işlemi yürütüyor. Script için lisans izni verilmiş ise script çalışıyor verilmemiş ise bir uyarı çıkıyor. şimdi gelelim lisanslama kodlarına..
<?php
$cekilecek_text=”http://www.siteadi.com/lisans.txt”;
if (!function_exists(“file”)) { die(“<strong><a href=’http://www.php.net/file’>file</a></strong> fonksiyonu sunucuda yüklü olmalıdır<br /> fonction <strong><a href=’http://www.php.net/file’>file</a></strong> must be installed on the server”); }
function lisanskontrol() {
if (substr($_SERVER['HTTP_HOST'], 0, 4) == “www.”) {
$domainadi = substr($_SERVER['HTTP_HOST'], 4);
} else {
$domainadi = $_SERVER['HTTP_HOST'];
}
return $domainadi;
}
$alanadi=lisanskontrol();
$lisanstext=file($cekilecek_text,FILE_IGNORE_NEW_LINES);
$lisans=array();
foreach($lisanstext as $sayi => $cekveri) {
$lisans[$sayi]=rtrim($cekveri,”\r\n”);
}
if (!in_array($alanadi,$lisans)) {
die(“Lisanssiz Kullanim: “.$alanadi.”<br /> Unlicensed Usage “.$alanadi); exit;
}
?>
$cekilecek_text=”http://www.siteadi.com/lisans.txt”;
if (!function_exists(“file”)) { die(“<strong><a href=’http://www.php.net/file’>file</a></strong> fonksiyonu sunucuda yüklü olmalıdır<br /> fonction <strong><a href=’http://www.php.net/file’>file</a></strong> must be installed on the server”); }
function lisanskontrol() {
if (substr($_SERVER['HTTP_HOST'], 0, 4) == “www.”) {
$domainadi = substr($_SERVER['HTTP_HOST'], 4);
} else {
$domainadi = $_SERVER['HTTP_HOST'];
}
return $domainadi;
}
$alanadi=lisanskontrol();
$lisanstext=file($cekilecek_text,FILE_IGNORE_NEW_LINES);
$lisans=array();
foreach($lisanstext as $sayi => $cekveri) {
$lisans[$sayi]=rtrim($cekveri,”\r\n”);
}
if (!in_array($alanadi,$lisans)) {
die(“Lisanssiz Kullanim: “.$alanadi.”<br /> Unlicensed Usage “.$alanadi); exit;
}
?>
Evet yukarıda verilen kodlar ile artık scriptinizi lisanslamış oldunuz.
Eğer lisansladığınız scriptileri yönetmek gibi bir derdiniz var ise bu için daha profesyonel yapılmış halleride mevcuttur. Buradan bir örneğe bakabilirsiniz
Hiç yorum yok:
Yorum Gönder