2013-07-20 28 views
0

现在我想重定向用户打开嵌入在另一个站点的直接图像。.htaccess允许嵌入但重定向直接图像加载

livememe通过http://www.livememe.com/36opcf5.jpg重定向到http://www.livememe.com/36opcf5完美实现了这一点,即使直接图像url嵌入在另一个站点中。

现在我想acomplish同样的事情,这是我到目前为止有:

RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?reddit.com/.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?tumblr.com/.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?facebook.com/.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mysite.com/.*$ [NC] 
RewriteCond %{HTTP_REFERER} ^$ 
RewriteRule ^i/([a-zA-Z0-9]+)\.(jpe?g|JPE?G)$ /r/$1 [R] 

现在从我的理解是,我允许这些网站嵌入我的图片在他们的网站但如果他们直接访问网址而不被引用,我会重定向他们。

例如在我的网站我有位于这样的图片:http://mysite.com/i/0b1be.JPG

虽然文章所在位置:http://mysite.com/r/0b1be

重定向的作品,但我还是失败,因为你仍然可以访问,如果直接图像你从任何允许的网站上关注它。

回答

0

你可以试试这个代码:

RewriteEngine on 
RewriteCond %{HTTP_REFERER} ^https?://(www\.)?(reddit|tumblr|facebook|mysite).com/.*$ [NC] 
RewriteRule ^i/([a-zA-Z0-9]+)\.(jpe?g|JPE?G)$ /r/$1 [R] 
+0

这打破了我已经嵌入我的网站中的所有图片。 – user2360599

+0

这不完全是你想要的,但它现在工作? –

+0

不,没有。仍然得到破碎的IMG – user2360599

0

你可以尝试添加此条件:

RewriteCond %{HTTP_ACCEPT} !^(.*)image(.*)$ [NC]