웹서버 구축시 골치 거리중 하나가 바로 핫링크(Hotlink) 입니다. 이미지나 동영상 같은 미디어 파일의 링크를 따서 외부 사이트에 걸어놓는 거죠. 이로인해 엄청난 양의 불필요한 트래픽이 발생할 수 있습니다. MVC4에서는 web.config 수정을 통해 이를 방지 할수 있습니다.


방법은 간단합니다. web.config 파일에 아래의 rule을 추가해주면, 해당 url에서 오는 요청이 아닌 것들은 rewrite에 지정된 이미지로 교체 해서 전송됩니다. 이 이미지는 저용량의 불펌금지!!! 같은 이미지로 설정해두면 좋겠죠.


// mydomain에서 오는 요청이 아닌 것은 noimage.jpg로 전송
<system.webServer>
	<rewrite>
      <rules>
        <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://www.mydomain\.com/.*$" negate="true" />
            <add input="{HTTP_REFERER}" pattern="^http://mydomain\.com/.*$" negate="true" />
          </conditions>
          <action type="Rewrite" url="/images/noimage.jpg" appendQueryString="false" />
        </rule>
      </rules>
    </rewrite>
</system.webServer>



+ Recent posts