Hot Linked Image Cacherの本当の機能

ネット上ででまわっている情報には、実は間違っているものがあるというお話。

アクセスログをぼ〜っと見ていたら、Hot Linked Image Cacherの紹介記事へのアクセスが結構多い。

こんなメモ書き程度のサイトにアクセする人がいるもんだと思った反面、これは、記事の内容に責任を持たないといけないなと思い、対応することにした。というのも、Hot Linked Image Cacherには、しばらく自分で使ってみた結果、どうも「画像ファイルへの外部からの直リンを防ぐプラグイン」の機能は無いことに気がついていたからだ。

なぜ、このようにいわれるようになったかは知らないが、ネット上でのHot Linked Image Cacherの評価は、「画像ファイルへの外部からの直リンを防ぐプラグイン」。上のように自分が使ったことのあるプラグインをメモ書き代わりに記録していた当時は、ググったネット上の複数の記事でそう説明されていた。実際に、自分でもそう信じて自サイトにインストールして使用していた(その後、そうではないことに気がつくわけであるが)。
きっと、どなたかが書いた始まりの記事に勘違いがあって、それがそのまま広まったような感じがする。これはこれで、ネット上でなぜか信じられている間違った内容(都市伝説のようなもの)の広がり方を研究するには面白いネタではないかと思う。

さて、本題。

まずHot linkとは?:Hot link という英語の意味は、webページではなく、画像などに直接リンクを張ること。相手先のサーバーのトラフィックを使って画像などを表示させることになるので、嫌われる行為の一つである。

なので、Hot Linked Image Cacherという名前の意味は、「Hot linkした画像をキャッシュするもの」といったような意味になる。wordpress.orgサイトでのプラグイン配布ページでの説明文を見てみると、下記の通りその旨説明されている。

HLIC1

Hot Linked Image Cacher is a Free and Open Source WordPress plugin which is able to automatically search for Hot Linked Images within your posts and automatically cache the images locally and update the img links within your posts. It doesn’t matter if you have 1 post or 100,000 posts, it will handle it. You can control exactly which post to cache by optionally specifying a post id number (or just put all to cache all posts). You can also control exactly which domain to cache from by specifying domains. This plugin supports both curl and allow_url_fopen methods in getting remote files, so it doesn’t matter which method your server support, we have it covered.

Benefit of caching the image locally? Your image never become dead or replaced because you have full control, search engines will point to your site when someone does an image search meaning more traffic to your site and the other sites won’t complain about you hot linked their images anymore.

おおまかに訳すと、「Hot Linked Image Cacherは、フリーでオープンソースなwordpressのプラグイン。あなたの記事中にあるHot linkした画像を自動で探し出し、その画像をあなたのサーバー(自サバ)内に自動でキャッシュする。そして、記事中の画像ファイルへのリンクを自サバにキャッシュした画像へのリンクに置き換えてくれる。あなたの投稿記事が1つであっても10万であっても全く気にすることはない、ちゃんと実行してくれる。オプションとして特定の記事IDだけを指定してキャッシュさせることもできる(あるいは全部の記事をキャッシュすることもできる)。また、特定のドメインを指定してキャッシュすることもできる。このプラグインは、ファイルを取得するのに、curlとallow_url_fopen 方式の両方をサポートしているので、あなたのサーバーがどちらをサポートしているかを気にせずに使える。

自サバに画像ファイルをキャッシュすることにメリットがあるのかって?(そりゃあ、あるさ、例えば、)自サバにあるのでその画像が知らないうちに消えたり置き換えられたりすることは無い。誰かが画像検索をかけた場合、検索エンジンは自サバの画像を示してくれるので、トラフィック増に効果がある。Hot linkされた画像を持っているサイトのオーナーがHot linkについてあなたに文句をいってくることも無い。」

なので、Hot Linked Image Cacherの本来の働きは、自サバへの直リンを防ぐプラグインではなく、他サバへの直リンを行わないようにするプラグインということになる。いままでネット上で出回っている紹介記事は全く逆で、日本のwordpressコミュニティの中では、間違った情報が都市伝説のようにひろまっていた面白いプラグインということになる。

実際、Hot Linked Image Cacherでキャシュされたファイルへの直リンを、自サバとは別のサイトから行ってみると、全く直リンを防止しない。普通に直リンされて表示される。

Hot Linked Image Cacherの本来の働きは画像ファイルのキャッシュなので、HLICというディレクトリを作成して、そこにキャッシュファイルを保管する。flickrなど外部サーバーに直リンするような画像ファイルも、気がつくと、自サバのHLICディレクトリに画像が保存され、記事中のリンクもHLICへのリンクに置き換えられている。そのメリットは、配布サイトで説明されている通り。

Hot Linked Image Cacherの使用に関する注意点は、使用を継続しなくてもいいが(プラグインの使用はやめられる)、HLICディレクトリに変更された記事中のリンクは自動ではもとに戻らない。ということ。戻したい人は手動で1個1個書き換える必要があり。
ちなみに、HLIC内の画像はキャッシュなので、オリジナルの画像がなくなるなんてことは無い。

HLIC

プラグイン配布サイトでは、「このプラグインは2年以上更新されていません。今後メンテナンス等は行われない可能性があります。また、最新のwordpressには対応しない可能性があります。」と出てしまっているので、本来の用途(メリットはある)以外を目的として使っている人は、使用をやめてもいいかもね。