1

我目前在我的照片文件夹的 .htaccess 中有以下内容。

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?siteabc.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?sitexyz.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://example.com/images/bandwidth.png [NC,R,L]

这会阻止所有不允许的域对我们的照片文件进行热链接,并在其位置显示http://example.com/images/bandwidth.png

但是,我想做的是允许网站能够热链接我们的缩略图。缩略图图像具有这种文件名格式

filenameabc_100_cw100_ch100_thumb.jpg
filenameabc_100_cw100_ch100_thumb.png
filenamexyz123_100_cw100_ch100_thumb.png

例如,文件名都以 _thumb.ext 结尾

所以我想做的是修改上面的 .htaccess 以全局阻止所有访问,但以 thumb 结尾的文件名除外,例如 *_thumb.jpg 或 *_thumb.png

我不知道如何编写这样的规则。

如果有人有任何想法,我将不胜感激。

4

1 回答 1

1

修改问题中的规则集:

你可以试试这个:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?siteabc.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?sitexyz.com [NC]
# Add this other exception
RewriteCond %{REQUEST_URI}  !_thumb\.  [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://example.com/images/bandwidth.png [NC,R,L]
于 2013-01-28T14:31:13.013 回答