Today's Internet, the collection of Web sites are very many, many sites like hotlinking/misappropriation of other people's website pictures, so not only violated the network rights, but also caused by the hotlinking of the site consumes a lot of traffic, to the server caused relatively large pressure, this article to introduce how PHP to prevent image theft/hotlinking two ways, You need a friend to refer to.
What is the use of image anti-theft chain? Prevent other websites from stealing your pictures and wasting your valuable traffic. This article introduces you to PHP three ways to prevent image theft/hotlinking
1. Simple anti-theft chain, the code is as follows:
$ADMIN [Defaulturl] = "http:/www.php.cn/404.htm";//Hotlinking returns the address $okaysites = Array ("http:/www.php.cn/", "http:/www.php.cn" ); Whitelist $ADMIN [Url_1] = "http:/www.php.cn/temp/download/";//download location 1 $ADMIN [url_2] = "";//download location 2, etc. $reffer = $HTTP _referer ; if ($reffer) {$yes = 0, while (list ($domain, $subarray) = each ($okaysites)) {if (Ereg ($subarray, "$reffer")) {$yes = 1;} } $theu = "url". " _"." $site "; if ($ADMIN [$theu] and $yes = = 1) {Header ("Location: $ADMIN [$theu]/$file"),} else {header ("Location: $ADMIN [Defaulturl]" ); }} else {header ("Location: $ADMIN [Defaulturl]");}?>
How to use: Save the above code as dao4.php,
For example, my test validatecode.rar in my site http:/www.php.cn/temp/download inside,
The download connection is indicated by the following code.
CODE: [Copy to Clipboard]
FileName? site=1&file= file
2. Server anti-theft chain
Use the IIS anti-theft chain software, you can search, there are many online.
3. Software download anti-theft chain method
The code is as follows:
Place the root directory of the download software relative to the current script directory $fileRelPath = ". /.. /software "; Exceptions allow the URL of the connection, note: The domain name does not need to be filled in, set to be sure to download,//empty string ("") indicates the direct input URL download situation $EXCLUDEREFERARR = Array (http:/www.php.cn "," php.cn "); ChDir ($fileRelPath); $fileRootPath = GETCWD (). " /"; $filePath = $HTTP _get_vars["file"]; $url =parse_url ($_server["Http_referer"]); if ($url [host]!=$_server["Http_host"] &&!in_array ($referHost, $EXCLUDEREFERARR)) {?>