画像の埋め込みリンクを制限する方法

最終修正日 2007.10.12.   

 

前置き

画像を無断転載された上に、より高い転送料も支払わされるという事態を防ぐために、画像などの直接リンクを制限する方法方法を紹介します。画像を素材として使われたり、ブログや掲示板に貼り付けられたりする可能性を減らします。

海外コレクター対策としてはあまり役に立ちません。なぜなら、コレクターたるもの、いい絵をみたら、即座にディスクにコピーでしょう。

他サイトでの画像の呼び出しを禁止しているサーバーを借りる

埋め込みリンクされないことが重要なのでしたら、これがてっとりばやいでしょう。探せばけっこうあります。ギャラリー部分だけをこちらに移転するのもいいでしょう。たいがいは無料の広告バナー入りサーバーでしょうから、重い可能性もあります。また、サイトのバナーも呼び出し禁止というサーバーもありますので、ご注意下さい。

サービスの一例 

COOL(無料版) FC2WEBが提供する無料ホームページサービス  AAA! CAFE  ジオシティーズ  Finito Web  フリーティケットシアターのJPEGプロテクトについて

 

定期的にファイルのURLを移動させる

少し面倒ですが、確実な方法です。定期的に画像を入れているディレクトリの名前を変更しましょう。

長所としてはどこのサーバーでも実行可能なこと、欠点としては自分のページのリンクをいちいち変更しなければならないことですね。

なので、Namery等のhtmlファイルをまとめて書き換えるツールかデッドリンクチェッカーをご用意なさることをおすすめします。ホームページ作成ソフトの中にはこの手の機能が最初からついているものもありますので、お使いのソフトのヘルプ等を読んでみて下さい。そういう機能がついてない場合はamazon.co.jpVecterあたりで探してみて下さい。

まあ、転送URLサービスを利用し、自分のサイトのURL自体を始終変えるとか、インデックスページ以外、サイト全体をひとつのディレクトリに入れて一月ごとにsakura.ne.jp/~akikan/a/からsakura.ne.jp/~akikan/b/に移すとかいう、手間がかからず大胆な方法もありますね。

サービスの一例 

SmarTrans - www3.to 無料URL転送サ-ビス

CGIで直接リンクをふせぐ

CGIを使用する場合は、referreの取得が条件になります。携帯の機種やブラウザの種類、セキュリティソフトの種類によっては、元のサイトでも画像が見られない可能性があります。

T-Filesafe Ver 0.01には「リンク元のURL、アクセスする人のIPアドレス、ホスト名によって、アクセス許可、不許可の条件を設定可能。 各ファイルにアクセスした人のログを取ることも可能。」 という長所があります。なので、あらかじめ海外のドメインからのアクセスの場合、画像が表示されないという設定にしておくことも可能です。

WEB POWERのリンク・ブロッカー v.2.00には「参照元をチェックして、許可されたURL以外のアクセスの場合は、アクセスを拒否できます。ブラウザによるキャッシュも防止。」という長所があります。

.htaccessおよび、SetEnvIfを使った画像直リンクの制限

.htaccessの使えるサーバーで可能な方法です。Apacheのマニュアルによりますと、SetEnvIfディレクティブが .htaccessに設定できるようになったのは、Apache のバージョンが1.3.13 以降からです。以下のように書いた.htaccessを画像ディレクトリに設置して下さい。これも携帯の機種やブラウザの種類、セキュリティソフトの種類によっては、元のサイトでも画像が見られない可能性があります。.htaccessは必ずテキストモードで転送して下さい。

特定のサイトからのリンクのみ許可する場合です。使う場合は赤文字部分を書き替えて下さい。

SetEnvIf REFERER "www.yuzuriha.sakura.ne.jp/~akikan/kaigai" Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

許可する対象サイトが複数の場合です。

SetEnvIf REFERER "yuzuriha.sakura.ne.jp/~akikan/kaigai" Lilith
SetEnvIf REFERER "
www.auction.co.jp/" Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

特定のサイトからのリンクのみ不可の場合です。

SetEnvIf REFERER "http://www.geocities.com" Lilith
Order Allow,Deny
Allow from all
Deny from env=Lilith

禁止する対象サイトが複数の場合です。

SetEnvIf REFERER "http://www.geocities.com" Lilith
SetEnvIf REFERER "
http://www.yahoo.co.jp/" Lilith
Order Allow,Deny
Allow from all
Deny from env=Lilith

"yuzuriha.sakura.ne.jp/~akikan/kaigai"の部分は"http://www.yuzuriha.sakura.ne.jp/~akikan/kaigai"と書いてもいいのですが、このサイトはhttp://yuzuriha.sakura.ne.jp/~akikan/kaigaiでもアクセス可能なため後者だと自サイトからのアクセスをも弾く可能性があります。逆にhttp://yahoo.co.jp/からアクセス可能になったりもしますので、注意して下さい。

サンプル

特定のサイトからのみ許可 このディレクトリからのリンク以外は弾かれます。なお、正確なリファラー情報を吐かないブラウザやダウンロードソフトの場合、この先に進めないことがあります。

.htaccessおよび、mod_rewriteを使った画像直リンクの制限

.htaccessおよび、mod_rewriteの使えるサーバーを利用している場合、リファラーがとれないブラウザ以外は、以下の方法で直リンク規制が使えます。

もしrewrite機能が使える事が確認出来ましたなら、エディタで次のような内容のファイルを作ります。使う場合は赤文字部分を書き替えて下さい。

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^
http://自分のアドレス/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^
http://www.自分のアドレス/.*$ [NC]
RewriteRule .*\.gif$ - [F]

自分のアドレスの箇所は、例えばサブドメインを使用している場合、
http://aaa.bbb.ne.jp/ というURLなら、(aaaは自分のアカウント、bbbはサーバ名として)

RewriteCond %{HTTP_REFERER} !^http://aaa.bbb.ne.jp/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.bbb.ne.jp/~aaa/.*$ [NC]

という具合になります。

また、一番下の RewriteRule .*\.gif$ - [F] のgifの箇所は、追加でJPEGやPNGを付け加えてください。 さらに、一番下の項目、 RewriteRule .*\.gif$ - [F] を RewriteRule ^(.*)$ - [F] とすると、GIF、JPEGに関係なく制限できるようです。

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://
aaa.bbb.ne.jp/.*$ [NC]
RewriteRule ^(.*)$ - [F]

このテキストファイルを制限したい画像のあるディレクトリ、または上位ディレクトリにFTPでアップロードし、FTPでファイルの名称をhtaccess.txtから、.htaccessへと変更します。

ちなみに、.htaccessはmod_rewriteでの制限となるため、リファラー(元のリンク先)をみて、制限している事になり、リファラーの不明な場合は直リンク規制がかかり、自分のサイトでも画像の表示がされないことがあるようです。
ですので、.htaccessファイルは、index.htmlのあるカテゴリーより下のカテゴリーに置かれると良い、とのことです。

なお、画像といっても、バナーは別にしましょう。バナーの直リンクを防ぎたいというなら別です。

参考URL Apache URL Rewriting Guide サイトの日本語訳

 

.htaccessと.htpasswdによって、パスワード制にする

画像のおいてあるページを見るためには、パスワードが必要なようにするのも、確実な方法です。.htaccessと.htpasswdによるアクセス制限を、参考にしてください。画像の呼び出しを禁止するためで、入室者を制限したいわけではない場合は、入り口はクイズ制にしましょう。「蜜柑の読みを、ローマ字で入力して下さい」とか。

ドットエイチティーアクセスがよくわからないという人は、簡単作成の .htaccess Makerをどうぞ。


  
< prev back next >