开发者

Prevent hot-linking of generated thumbnails?

I have a .htaccess file that contains directives to prevent the hot-linking of static assets (images, CSS and JavaScript files). The relavant code looks like this:

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?ipwuk.com/.*$ [NC]
RewriteRule \.(gif|jpg|js|css|png)$ - [F,L]

This is great and does the job; however, I have a PHP script that automatically generates thumbnails (and doesn't contain the file extension in the URL). A sample thumbnail URL looks like this:

http://example.com/inc/image.php/4e7efde2ee8ac.jpg/610/343/fill

Or:

http://example.com/inc/image.php/[seed].[extension]/[width]/[height]/[thumb type]

How can I prevent images generated by the above script from being hot-linked (开发者_开发技巧which I suspect my client is doing and as a result is eating bandwidth to the tune of over 150MB a day)?


This code denies all requests for image.php that are NOT direct or from specified website.

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?ipwuk\.com/.*$ [NC]
RewriteCond %{REQUEST_URI}  ^/image.php(.*)$ [NC]
RewriteRule ^(.*)$ - [F,L]


Could you not actually prevent - EDIT: discourage - it in the script that generates the thumbnail itself?

In pseudo-PHP:

if (parse_url($_SERVER['HTTP_REFERER']) != "yourSite"){

   //generate thumbnail that says "don't hotlink, scum!"

}
else {

    //do your normal thumbnail generation routine

} 
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜