Article Diary - General Knowledge Digest

Prevent hotlinking with a .htaccess file

Hotlinking refers to linking directly to non-html objects on other servers, such as images, movie files etc. This can greatly impact bandwidth usage, and in some cases GPUs if you are on the (gs) Grid-Service. You can prevent these requests on your server using a .htaccess file.

If you already have an .htaccess file simply add one of these two snippets of code to your existing file, or create a new plain text document with this code and upload it to your domains directory, or a particular sub directory to localize the effect to just one of your sites, or section of one of these sites:

To simply stop hotlinking you can add the following to your .htaccess file:

Replace mt-example.com on line 3 with your own domain name.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?mt-example.com/.*$ [NC]
RewriteRule .(gif|jpg|jpeg|bmp|zip|rar|mp3|flv|swf|xml|php|png|css|pdf)$ - [F]

To serve alternate content when hotlinking is detected:

You can set up your .htaccess file to actually display different content when hotlinking is attempted. This is more commonly done with images suggesting your displeasure of this activity, such as serving up an "Angry Man" image in place of the hotlinked one. Once again replace mt-example.com on lines 3 and 4 with your own domain name.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?mt-example.com/.*$ [NC]
RewriteRule .(gif|jpg)$ http://www.mt-example.com/angryman.gif [R,L]
3.8 (5)
Article Rating (5 Votes)
Rate this article
Attached Files
There are no attachments for this article.
Comments (1)
Comment by Rahul Ghatotkach on Thu, Oct 8th, 2009 at 12:55 PM
Its is very helping article here about Preventing hotlinking with a .htaccess file. Keep it up. Its is nice one.
Name
Email
Security Code Security Code
Related Articles RSS Feed
PHP For Android Project - Interview with Lead Developer
Viewed 1228 times since Mon, Jul 26, 2010
Web Application Security Tools & Scanner Applications
Viewed 1546 times since Mon, Mar 22, 2010
Create Interactive JavaScript Charts With Highcharts
Viewed 1423 times since Fri, Dec 4, 2009
Free Under Construction Coming Soon Template
Viewed 2265 times since Sat, Mar 12, 2011
Free IP to Country, IP to City Database & API
Viewed 1567 times since Thu, Dec 31, 2009
50 Free And Quality Web Icons
Viewed 1845 times since Tue, Jan 5, 2010
How do I setup and use SSH?
Viewed 1829 times since Thu, Oct 15, 2009
New Tags Introduced in HTML5
Viewed 1544 times since Sat, Apr 3, 2010
PHP Script For PDF to HTML Conversion
Viewed 6596 times since Tue, Dec 15, 2009