読者です 読者をやめる 読者になる 読者になる

はりをきば

そこにピカマンがいる限り 私はテイッハットウッをやめない


Caution!!
この日記はバカな私(はりを)が何かを忘れない為に、バカの一つ覚えの如く色んな記事を投稿しています。…が、
あくまでもただの備忘録のひと握りに過ぎず、情報の信憑性や真偽までは保証していません。
極力正しい情報をまとめているつもりですが、万一誤った記事の内容を実行しトラブル等が発生しても
当方は如何なる責任を負いません。自己責任でご利用ください。

以上に同意する方のみ、この雑記帳の閲覧をお願いします。

初めての方はこちらも併せてお読みください。このブログについて (About)


…ちゃ、ちゃんと予防線張ったからな!! ホント何があっても知らねーからな!!!(小学生並の言い訳)

予防線(☢Caution!!☢)の表示
テキスト全般の表示に使うフォント (大抵は「メイリオ」か「ヒラギノ角ゴ ProN W3」) (マルチバイト文字はSource Han Sansと同じ) (マルチバイト文字はNoto Sansと同じ)
ソースコードの表示に使うフォント
ピカマンロケットの効果音

設定を保存キャンセル

画像検索で見つけたFC2ブログの画像が見れない(404エラーを吐く)件

雑記

前々から気になってたことがある。

画像検索でHITしたFC2ブログの画像は何故検索エンジンにフルサイズでキャッシュされないのか。

フルサイズでキャッシュされているところを見たことがない。


それともう1つ。

何故か画像検索でHITした画像だけ、そのFC2ブログ記事の該当する画像URLが404で開けない。


…何言ってるかわかんないね。
ggってみたら少し情報があった。

趣味の箱 2.5 |FC2ブログの画像表示について

http://hobbybox2.blog54.fc2.com/blog-entry-439.html

まさにこんな状態。
画像検索結果経由だけでなく
直接FC2ブログの記事から画像を開いてもURLに「-origin」があると404で開けない。
(originを外せば開ける)


何故こうなった? もう少しggると次の記事がHIT。

跡書き - FC2 BLOG パスワード認証

http://in1111.blog.fc2.com/blog-entry-309.html

「*.fc2.com」と空以外のリファラで弾いてると見て間違いはないのだろうが。。


…納得いかないことがある。


仮にリファラにより遮断しているとするなら、直接FC2ブログの画像URLを
アドレスバーにコピペして開けばリファラなしで飛ぶはず。


なのに、俄然404のままで画像が姿を見せる気配がない。。



追記

なんで一度404食らうと以後画像URLコピペで飛んでも喰らい続けるのか、ようやくわかった。


FC2ブログの画像サーバーはリファラをチェックし、
外部サイトのリファラを検出すると301ステータスで404ページにリダイレクトすることが判明。



この301というのは、HTTPにおいて恒久的なデータ移転を示すもの。
詳しくは以下のWikipedia参照。

HTTPステータスコード - Wikipedia

http://ja.wikipedia.org/wiki/HTTP%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89#3xx_Redirection_.E3.83.AA.E3.83.80.E3.82.A4.E3.83.AC.E3.82.AF.E3.82.B7.E3.83.A7.E3.83.B3


この301ステータスにはブラウザ共通の落とし穴がある。
そのリダイレクト情報がローカルにキャッシュされるという点だ。
HTMLや画像のキャッシュとは訳が違い、スーパーリロードでキャッシュを更新することができない。


…自分でも何言ってるかわからないので3行でまとめる。


要するに、

  • 一度でも画像検索経由などで外部サイトのリファラをもった状態でFC2ブログの画像を踏むと
  • ブラウザに「以後、この画像へのアクセスはもれなく404に飛ばすように☆」と教え込まれ
  • その後キャッシュを消さない限り、リファラ関係なくその画像は404で閲覧不可になる。

と、いうこと。


゚.・(#`д´)・.゚ うざっ!!




原因がわかったところで、何とかできないかggったら出てくる出てくる。

chromeは、301リダイレクトをキャッシュしている - too_youngの日記

http://d.hatena.ne.jp/too_young/20110303/1299149420

444 Failed: 301 リダイレクトをchromeがキャッシュする

http://sikaku444.blogspot.jp/2010/04/301-chrome.html

.htaccessによるリダイレクトをやめてもIE9のみリダイレクトされ続ける

http://social.technet.microsoft.com/Forums/ja-JP/internetexplorerja/thread/3185f4a3-0041-4526-96f6-a30ff78528b3/


クライアント側での対処法は、やはりキャッシュ一括削除しかないっぽい。
ここで注意すべきはIE。
IEはキャッシュ削除しても301の情報だけは残る
(これに気づくのに1時間かかった。ハメられた。)


IEの場合、上に貼ったはてダのコメントにあるように
InPrivateモードで起動し、301を埋め込まれた404画像のURL(-origin付き)を
一度アドレスバーにコピペで踏む。


完全に読み込みが終わったらInPrivateモードを閉じ、IEを通常起動。
通常IEで再びその画像URLをコピペで踏むと
以後、また外部から踏んで301植え直ししない限りちゃんと表示される。



そもそも何故404?

よくわからない条件分岐で弾かれる云々はともかく、
画像自体はちゃんとそこに存在する。


それを404とか、頭おかしいの?
常識的に考えて普通は403。


既にリクエストが投稿されているようだが未だに受理されていない。

画像が外部からの直リンクではなぜか「404NotFound」。403にすべきでは。 - FC2リクエスト

http://request.fc2.com/view_wish.php?wid=5_1268236423_747040

つーか何故301?

エラーページのリダイレクトステータスは常識的に考えて302307
301はwwwやindex.html有無の統一(URL正規化)にしか使わない。
(というかそれ以外で普通使うもんじゃない)




…言っちゃ悪いけど、FC2ブログの担当者の頭は大丈夫か?


FC2という企業自体アレだけど
仮にも大手ブログのブログシステムがここまでいい加減だとは思わんかった。


そんな意味不なブログサービスで「○○画像まとめ」や写真日記みたいな
画像メインの用途に使ってる人の気もどうかしてる。