The Problem:
So let’s take a moment to talk about hotlinking, shall we? If you are unfamiliar with the term, hotlinking (sometimes referred to as remote linking, or leeching) is the practice of displaying an image on your website, that is hosted on another server (not your own). This isn’t inherently bad, it’s an acceptable practice, but only if you own both servers (or sites). It’s only really bad if you are trying to display an image on your site that is hosted by another server that you don’t own or have an agreement with. That’s called stealing. You are stealing the other persons bandwidth, possibly costing them money.
I was having a big problem with people stealing my bandwidth through hotlinking. The biggest offenders were users of MySpace and Xanga, two really crappy blogging services. The free MySpace and Xanga accounts don’t come with any image hosting, so users of those accounts often resort to stealing images from other sites. In the case of Xanga, they actually have step-by-step instructions on how to do this in their help section. Many MySpace and Xanga users were using the images from my downloads page as backgrounds for their blogs. I actually had hotlinking disabled on my server, so the offenders couldn’t actually see the images they tried to place on their site, but my server was getting thousands of requests per day for these images. It was extremely annoying.
What did I do about it?
So, I made a little list of some these offending sites and I emailed them to MySpace and Xanga with a request to “make them stop!”. I never heard back from Xanga, and nothing has changed. MySpace on the other hand actually wrote back to me.
“The image has been removed from the users in question. We highly
recommend that you disable hotlinking on your webserver in order to
preserve bandwidth.”
I was surprised to hear back from them. What they told me was almost true. I rechecked the sites that were trying to use my images and some of them were gone completely, some of them had the offending code removed, and some were exactly the same. So, I guess it helped a little. If you are seeing MySpace listed as a referrer in you logs, I would make a list of the sites and send it in.
Ironically, the images in the downloads page are totally free to download and use however you want. I don’t have a problem with that. I just didn’t want these people sucking up my bandwidth. If you want to use those images, feel free to do so. But, you must download them, and host them on your own server.
What else did I do about it?
As I mentioned, I already had hotlinking disabled on my server, but I wanted a way to discourage people from trying to use my bandwidth. If you simply disable hotlinking, then the worst thing that will happen to the offender is a little box with a red “X” will appear on their site where they tried to place the image. Although if someone tries to use the image as a page background, there won’t be any indication at all on the offending page.
So here’s what I did. I created a graphic (above) with a message about stealing images from my site. Then I set a server-side redirect for any hotlink request that came in to go to this new graphic instead. I ran into a slight snag here because my message graphic was on my server, which has hotlinking disabled. So, when the request for an image came in, it was redirected to the new graphic, but since it also lives on my server, it was also hotlink protected and tried to redirect to itself. This caused an infinite loop and wouldn’t display my graphic on the offending site. I needed another server, that wasn’t hotlink protected, to host my graphic. Flickr to the rescue. I had already set up a flickr account because I’ve been testing it as a possible host for odl images. I uploaded my new message graphic to flickr and set my server to redirect to it’s location on their server. It works great now. If someone tries to display an image from my server in their site they get the message above, and I get a little free advertising. I went to a couple of the sites still trying to use my images as their page backgrounds, it was extremely satisfying to see my message graphic tiled across their entire page.
If you are experiencing similar problems, try doing what I did. A good webhost should provide you with a way to disable hotlinking, and add the redirect to an alternate image. If your host doesn’t offer this, try mine. I’ve been really happy with them.
I’ve neven had that happen to me luckily.
Dammit all, I never think of this. Could you write up a guide on how you made the redirect to the message (image). That’d be cool, I’ve heard of some people who use porn images when somebody does that ;).
Ya, I’ve heard that too. I stayed away from that because the thief may end up liking it. I went with something simple.
Actually, I wouldn’t be able to put together much of a tutorial. The way I did it was specific to my host. They have built in tools for modifying these kinds of things. Does your host give you an online control panel? If so, is it ‘cPanel’? cPanel has an item appropiatly named ‘Hotlink Protection’. I do everything from there.
If you don’t have cPanel, or another option through an online control panel, I think you can make these kind of settings through an .htaccess file. I don’t really know anything about making / using one of these files, but a quick google search revealed this document http://www.javascriptkit.com/howto/htaccess.shtml
A slight problem with the graphic as I see it….
Steal is spelled steal, not steel.
Nice site, btw, makes me wish i had a mac.
Oops! You can tell I can’t speel very weel. Thanks for the heads up. :)
“I’ve heard of some people who use porn images when somebody does that ;). ”
I’ve been known to do that in the past :) Nothing worse than some punk not only stealing your bandwidth but in my case stealing my site design (at the time) and my personal images. So, I sort of redesigned it for him, the best I could.
Yes I use cPanel Paul, I’ll look into it.
Here here. I might hotlink to your hotlink image ;)
Just kidding. But can I use it?
Using porn images is irresponsible, I think the message you use is appropriate.