2014-01-13 72 views
1

我使用此代码,以防止图像热链接不过IIS防止图像盗链,HTTP和HTTPS

<rule name="Prevent Hotlinking"> 
    <match url=".*\.(jpg|jpeg|png|gif|bmp)$"/> 
    <conditions> 
     <add input="{HTTP_REFERER}" pattern="^$" negate="true" /> 
     <add input="{HTTP_REFERER}" pattern="^http://domain\.com/.*$" negate="true" /> 
    </conditions> 
    <action type="Rewrite" url="/img/hotlink-logo.png" appendQueryString="false" /> 
</rule> 

但是当我访问HTTPS部分我所有的图像都与盗链-logo.png替换。我尝试添加第二个规则来管理hTTPS请求,但同样的问题发生。

我试着为HTTPS添加第二个条件,但是再次允许盗链。

有什么建议吗?由于

回答

2

您需要包括在正则表达式的网址:

^https?://domain\.com/.*$ 
+0

啊......伟大工程。谢谢 – puks1978