.htaccess 重定向具有低分辨率版本的热链接图像

.htaccess 重定向具有低分辨率版本的热链接图像,.htaccess,mod-rewrite,redirect,hotlinking,.htaccess,Mod Rewrite,Redirect,Hotlinking,我在一家数码产品制造商的网站上工作。 产品图片通过数百个博客和论坛进行热链接。这导致了带宽问题 我们希望使用低分辨率版本替换所有热链接图像 .htaccess 表示如果热链接图像路径为 http://www.example.com/products/gadget123/gadget123.png 我们想把它重定向到 http://www.example.com/images/low-res/gadget123.png 热链接图像路径不同,这意味着它们可能来自任何目录的子目录 比如说 /ima

我在一家数码产品制造商的网站上工作。 产品图片通过数百个博客和论坛进行热链接。这导致了带宽问题

我们希望使用低分辨率版本替换所有热链接图像 .htaccess

表示如果热链接图像路径为

http://www.example.com/products/gadget123/gadget123.png
我们想把它重定向到

http://www.example.com/images/low-res/gadget123.png
热链接图像路径不同,这意味着它们可能来自任何目录的子目录

比如说

/images/products/abc/gadget_abc200.jpg
/products/images/abc/gadgetabc5155_packing.png
/downloads/brochures/abc2012/abc2012_user_guide.jpg

etc...
但所有低分辨率的图像都将在

http://www.example.com/images/low-res/
目录,其名称将与高分辨率版本相同。

尝试添加以下选项:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^(.*?)example\.com(/.*)?$ [NC]
RewriteRule   ^images/products/.+/(.+).png$ images/low-res/$1.png  [L]

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^(.*?)example\.com(/.*)?$ [NC]
RewriteRule   ^images/products/.+/(.+).png$ images/low-res/$1.png  [L]

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^(.*?)example\.com(/.*)?$ [NC]
RewriteRule   ^downloads/brochures/.+/(.+).jpg$ images/low-res/$1.jpg  [L]
此规则用于查找请求是来自您的站点还是直接来自第三方。 然后重写请求