I am designing a photography website for a client. The client requested that I make sure no-one "steals" her photos from the website.
As far as I know there is absolutely no way to do this reliably. Obviously disabling right click with JavaScript is very easy to get around.
Even creating the website in Flash does not solve the problem because anyone can just take a screen-shot and easily get anything they can see on the screen.
Short of putting a watermark or logo on each picture, is there any way to make sure no-one takes pictures off the site?
I am pretty sure your only options that do anything for real are watermarks and making sure all the photos are low resolution.
Clearly if I can see the photo then you have sent me the pixels and I can copy/save them if I want. Not much you can do about that.
Watermarks and posting lower resolution pictures are the best ways to prevent 'stealing' (in terms of the ratio between effort and efficiency, that is); in my opinion, of course. You could also use other easy tricks such as a script that disables right-clicks, as you've mentioned.
One other way, that is a lot more complex, is to send your pictures to a Flash viewer, through an encrypted channel. For example, there are some digital music stores that have this small Flash music player that receives the actual song over an encrypted channel. This prevents you from using pack analyzers to grab the data that is being sent.
You can always just press PrtScr, though...
There is now way to do this but you should place a copyright text to your site, licence all content with GPL if you desire and watermark it.
As far as I know there is absolutely no way to do this reliably.
Correct. The only way to make sure it's impossible1 to steal the images is to omit them from the page.
1 Even then, a "hacker" could break into your house and steal the hard drive that the pictures are stored on. Security is hard!
You can make it harder, if you use a viewer (say flash, but this can be Javascript as well) that uses a low res image when fully zoomed out, and uses multiple pictures when zoomed in. The one downloading the picture will have a hard time pasting all those pictures together.
That won't stop people who do have the knowledge to paste it together, but they may be willing to to pay for the use of those pictures, while other 'hobbyists' may want to use the pictures just for their own site or something.
I think you should ask yourself against who and what use you want to protect the pictures. If you don't want anyone to use them, not even a kid pasting it in their homework, you shouldn't post it online at all. But in general you want to protect the pictures from being used illegally in commercial activities. In that case a clear copyright notice is step one. Low-res versions and watermarks are nice extra's, but they will seriously affect the look of the site. So then you will have to ask whether this is like a gallery or a museum where people are supposed to be looking at the full size pictures, or it's just a catalog where people can buy them (like those many stock foto sites).
If I just want the world to see my pictures, it will be hard to protect them. I'd choose for a good copyright message, a signing or a name and url in a corner, and hope for the best.
If I wanted to sell my photo's, I'd not make a website at all, but rather put them up for sale on a stock foto website to reach a larger audience and make use of their infrastructure.
Whatever the choice, it is vitally important that you tell her that you cannot 100% protect pictures on the internet, and that you will not be responsible (i.e. paying for the pictures) if they leak out.
来源:https://stackoverflow.com/questions/6926774/how-do-i-prevent-people-from-stealing-photos-from-my-website