Webサイト専門プログラマの言いたい放題

元システムエンジニアがサイト制作とプログラミングについて好き放題しゃべります。

【直リンクを強制的に禁止する方法】

f:id:wp-lesson:20160329142535j:plain

イラストや写真とか作品を自分の
ホームページに掲載している人は
無断で作品を他サイトに掲載され
たらどう思いますか?
 
「そ、それ私のーーーー!!」
「何であんたが作ったことになってるのよーー!!」

 
ですよね(^^;
 
だからよく、イラスト素材屋さん
のサイトには書いてあるんです。
 
『直リンクは禁止します』
 
とかね。
 
実はこれ、無意味なんですよね。
 
モラルのある人はそもそも、直リンクなんてしません。
 
モラルのない人は書いてあってもやってしまうんですよ。
そう。確信犯。
 
そこで、サーバー側の設定で強制的に直リンクを禁止する
方法がありますよ~~。
 
その方法を理解するためには、次の仕組みを理解しておく必要があります。
 
~~~~~~~~~~~~~~~~
ホームページに載っている写真や
イラストは、ホームページと同じ
ウェブサーバーの中に置いてある。
(例外もありますが)
 
直リンクとは、他人のサーバーに
置いてある写真やイラストファイ
のアドレス(URL)を自分のサイト
に埋め込む行為。
 
画像を埋めたページが開かれると、
画像が置いてあるウェブサーバーに
対して「この画像のデータを下さい」
という要求(リクエスト)が
ブラウザから送られる。
 
ウェブサーバーはブラウザからの
リクエストを受け取って、画像の
データをブラウザに送り返す。
 
リクエストには画像を要求している
ブラウザがどこの誰なのかを示す
情報や、どのサイトから要求されて
いるのかを示すアドレス情報などが
含まれるので、ウェブサーバーは
信頼できる相手かどうかを見極めて
から画像データを送り返すかどうか
を決めることができる。
~~~~~~~~~~~~~~~~
 
ここまでの話がよくわからない方は
個人レッスンでお待ちしています。
http://codemy-lesson.office-ing.net/
 
上記の原理原則を理解できたら、
次です。
 
~~~~~~~~~~~~~~~~
ウェブサーバーには、特定のURLへ
のアクセスを特定の条件に該当する
場合だけ禁止したり許可したりする
設定ができる専用のファイルがある。
 
設定ファイルは .htaccess と呼ばれ、
以下の条件を所定の文法に従って
記述することで直リンクを禁止する。
 

                                                                                            • -

条件1.リクエスト元がネット検索以外
条件2.リクエスト対象が画像データ

                                                                                            • -

上記条件を両方満たす場合に、
リクエスト元にデータを返さない
設定をする。
 
~~~~~~~~~~~~~~~~
 
具体的な書き方を理解するためには
正規表現という特殊な論理が登場
する記号のルールを勉強する必要が
ありますので省略しますが、
 
日本語の論理で言うと上記の通り。
 
つまり、ネット検索以外で自分の
ホームページの画像にアクセスが
あるということは、言い換えると
他人のホームページに自分の画像
が掲載されているということ。
 
その場合に、そのページを開こう
としたブラウザに対して、ウェブ
サーバーから「アクセス禁止令」
を返してもらうという仕組みです。
 
 
以上、ノウハウ垂れ流し投稿でした。