弾さんがやってたのを見てmod_rewriteでもできるべと思い、試しにやってみた。
RewriteCond %{HTTP_REFERER} !^http://clouder\.jp/~yoshiki/nohotlinks/
RewriteRule ^/~yoshiki/nohotlinks/.*\.(gif|png|jpe?g|mov|wmv|avi|flv)$ - [F]
これでできた。

やっていることは、RewriteCondディレクティブでリファラーをチェックして、http://clouder.jp/~yoshiki/nohotlinks/でなかった場合には、RewriteRuleディレクティブで/~yoshiki/nohotlinks/以下の画像やメディアを403 Forbiddenに飛ばすだけです。

以下は実際の動作の様子です。
http://clouder.jp/~yoshiki/nohotlinks/から参照できる画像も、このページや直接アクセスすると見られなくなっています。

ホットリンクできる例

・ホットリンクできない例
↓は表示されない。


ちなみに自分もそのサイトが「ホットリンクしないで複製してね」という以外はホットリンクするというのが正しいやり方じゃないかと思います。


Apacheハンドブック
Apacheハンドブック
posted with amazlet on 07.04.08
Ben Laurie Peter Laurie 大川 佳織 田辺 茂也
オライリージャパン (2003/09)
売り上げランキング: 35539
おすすめ度の平均: 5.0
5 Apache使い必須