磁铁提供图像水印是很好的,因此水印图像将显示为
http://www.yourwebsite.com/media/catalog/product/cache/1/image/de684549e4151748e56ee0dd7902c19f/m/y/my-first-image.jpg
这很好。但是,如果有人删除了缓存/ 1 / image / de684549e4151748e56ee0dd7902c19f网址的一部分,那么它就会变成
http://www.yourwebsite.com/media/catalog/product/m/y/my-first-image.jpg
他可以查看图像并复制它。什么是应对这个问题的最佳方法?
答案 0 :(得分:1)
这就是我设法做到的。
将一个.htaccess文件放在Magento的media/catalog/
文件夹中,其中包含以下代码
Options +FollowSymLinks
RewriteEngine on
#Following line allows the actual images to be accessed by admin end directly
RewriteCond %{HTTP_REFERER} !^http://www.yourwebsite.com/.*$ [NC]
#Following line allows the watermarked images to be accessed directly. Rule says that if URL does not contain cache
RewriteCond %{REQUEST_URI} !(/cache/) [NC]
#This is the page where visitor will be redirected if tries to access images directly.
RewriteRule \.(gif|jpg)$ http://www.yourwebsite.com/do-not-try-to-steal-images.html/ [R,L]
答案 1 :(得分:0)
好吧,用水印创建自己的图像!就像删除缓存一样,缓存将从已经加水印的图像中重新创建图像
答案 2 :(得分:0)
您可以在媒体/目录文件夹中创建一个.htaccess文件,其中包含以下行:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*?/cache.*)$ $1 [L]
RewriteRule ^(.*)$ $1 [F]
如果用户尝试查看原始文件但让他们看到缓存中的图像,则会向用户返回403。
这会在管理员显示原始文件而不是生成的缩略图时中断预览图像。