XML 先将HELIX与随便一个进行用户认证数据库绑定! 然后通过程序向数据库写进随机的 用户名密码,
最后设定一个删除用户名密码的时间,通过XML向服务器发送请求 删除该允许帐号!
这个方法我以前用ASP的时候实现过可以在好大程度上限制大部分的盗链,但也不是绝对安全的!
最后设定一个删除用户名密码的时间,通过XML向服务器发送请求 删除该允许帐号!
这个方法我以前用ASP的时候实现过可以在好大程度上限制大部分的盗链,但也不是绝对安全的!
调试欢乐多
/*********************************************/
/* Desenvolvido por Jonis Maurin Ceará */
/* [email protected] */
/* ( LifeGuarD ) */
/* UIN: 5719948 */
/* */
/* */
/* This class block download from */
/* other sites. You can add domains */
/* that are enabled to download your */
/* files. You can also share files */
/* that are in non-web folder. */
/* */
/* */
/* Questions? */
/* e-mail: [email protected] */
/* */
/* */
/* This script is freeware, you are */
/* free to copy, but you should keep */
/* copyright note. */
/* */
/* Este script é freeware, voce pode */
/* usa-lo a vontade desde que mantenha */
/* os creditos no mesmo. */
/* */
/*********************************************/ class D_Security {
var $lista;
var $path;
function Dow_Security() {
$this->lista = array(); // Create empty host list
$this->path = "./"; // set default path do current folder
}
function SetPath($path) {
$this->path = $path;
}
function AddHost($host) {
if (empty($host)) {
return false;
}
$this->lista[] = $host;
return true;
}
function RemoveHost($host) {
for ($i=0;$i<count($this->lista);$i++) {
if ($this->lista[$i]==$host) {
$this->RemoveArrayItem($this->lista,$i);
}
}
}
function ListHosts() {
return $this->lista;
}
function RemoveArrayItem(&$ar,$item)
{
$ar = array_merge(array_splice($ar,0,$item),array_splice($ar,1));
}
function DownloadFile($filename) {
if ($this->ChecaReferer() == true) {
$fil = $this->$path.$filename;
header("Content-type: application/octet-stream");
header("Content-disposition: attachment; filename=".basename($fil));
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize("$fil"));
readfile($fil);
return true;
} else {
return false;
}
}
function ChecaReferer() {
$cont = count($this->lista);
for ($x=0;$x<$cont;$x++) {
if (eregi($this->lista[$x],$_SERVER["HTTP_REFERER"])) {
return true;
break;
}
}
}
}
// Example
$dow = new D_Security(); // Create new object
$dow->SetPath("./"); // set the folrder where the files are stored $dow->AddHost("www.your-website.com"); // Add host to list
$dow->AddHost($_SERVER["HTTP_REFERER"]); // Add host to list if (!$dow->DownloadFile("example.exe")) { // Download the file
echo "<br>Error: you are trying to download this file from unauthorized site<br>";
echo "Try again from authorized host now: <a href=downloader.php>link</a>";
}
?>
Example
$dow = new D_Security(); // Create new object
$dow->SetPath("./"); // set the folrder where the files are stored $dow->AddHost("www.your-website.com"); // Add host to list
$dow->AddHost($_SERVER["HTTP_REFERER"]); // Add host to list if (!$dow->DownloadFile("example.exe")) { // Download the file
echo "<br>Error: you are trying to download this file from unauthorized site<br>";
echo "Try again from authorized host now: <a href=downloader.php>link</a>";
}
basename(__FILE__) == basename($_SERVER["PHP_SELF"]) ? die('<h2>对不起!<'.basename(__FILE__).'>文件不允许您直接访问. <a href="/">回到首页</a></h2>') : '';
这是我用的,防止文件直接被访问。
有没有具体的方法呢?
去www.hotplay.net
看看这东西合适你不?