nginx で画像などへの直リン(ホットリンク)を対策する場合

ふと自分のサイトのドメインで検索などをしてみたところ、画像への直リンク(画像へのURL)が貼られていました。

あわせて読みたい
Module ngx_http_referer_module

実際大した影響はないのですが、せっかくなので直リンク対策をしてみました。nginx の設定です。

目次

ディレクティブ

location ~ files.*\.(gif|jpe?g|png|avi|flv|mov)$ {
  valid_referers none server_names example.com;
  if ($invalid_referer) {
    #rewrite ^(.*)$ ;
    return 403;
  }
}

location ディレクティブで設定してみました。

files/ 以下の画像や動画ファイルの拡張子へのアクセス時に、リファラが空もしくは example.com にマッチしない場合は 403 を返します。

また、少し前に流行った(?)画像の置き換えをしたければ、rewrite で別の画像へ飛ばしてあげてください。

ドメインやパスは適宜書き換えてお使いください。

Amazon.co.jp
nginx実践入門 WEB+DB PRESS plus
nginx実践入門 WEB+DB PRESS plus
Share it!
目次
閉じる