電気ウナギ的○○

About Home

image/pjpeg とは?

shinoda (2009年4月 8日 19:29)

ま、当然、progressive JPEG のことなんでしょうが・・・

ファイルアップロードのある CGI の話。
画像ファイル以外のアップは駄目だということで、FORM データの Content-Type を見て、

image/jpeg
image/gif
image/png

の、3つ以外はエラーにしてたんだけど、InternetExplorer7 から JPEG 画像をアップすると必ずエラーになる。
FireFox3 から同じ画像を上げたら問題ないのに。

で、FORM データの中身を見ると、IE7 は JPEG の Content-Type を image/pjpeg で上げてきてますよ・・・
どうも、2005年頃から問題になっているようで、RFC への記載も無いお得意の「Microsoft の独自実装」ってヤツみたいですね。

なんでもかんでも JPEG ファイルなら(baseline JPEG でも)image/pjpeg をセットしているみたいなので、わざわざ pjpeg にしている意味がまったくない。百害あって一利無し。なのに、なんで Micorosoft はこういうことをするんでしょうか?
Microsoft 信者は、なぜ Microsoft がこんな訳のわからんことをしているのかちゃんと説明しなさい。でないと、Microsoft 信者というだけで、あんたたちが馬鹿者扱いされるのも致し方ないことですぞ。

ちなみに、Windows2000 の InternetExplorer6 SP1 でも image/pjpeg をセットします。
(そういえば、Outlook 等、メールの添付ファイルではちゃんと image/jpeg を使っていたはずです。ま、InternetExplorer の開発チームが馬鹿だった・・・ということなんでしょう)

Microsoft が巨大企業なので、多くの「素人さん(IT業界の中にも、Microsoft 信者という形で存在します)」は Microsoft を「高い技術力を持った会社」と誤解しています。確かに限られた部分では、高い技術力を持っていると思いますが、例えばわしらのように The Internet の世界を商売ネタにしている技術者からすると「Microsoft はメジャー企業の中では最低の技術力の会社」にしか見えませんな。

よく、Microsoft は RFC を無視した独自実装を導入して、周りから「シェアにものを言わせた横暴な行為」と非難されてますが、俺に言わせれば、確かに半分は「わかってて無視した結果」なんでしょうが、残り半分は単に「技術的理解力不足による過った実装」でしかないと思うね。
今回の image/pjpeg もそうでしょう?まったく意味をなしてないんだから。
なんか、Microsoft としては狙いがあったんだろうけど、結局まったく意味がなかった。つまり、完全に技術者の「理解力不足」からくるバグだったってわけ。

面倒くさいことに、IE ファミリーのためだけに、ファイルタイプをチェックするのが、

$type eq 'image/jpeg'

ではなく、

$type =~ /image\/p*?jpeg/

と書かなくちゃいけなくなっちゃう。
正規表現がわからないプログラマだと、

$type eq 'image/jpeg' || $type eq 'image/pjpeg'

のような不細工なコードになっちゃう。

Microsoft が「理解不足」からやっちゃった過った実装は、こうして広く、プログラマに迷惑をかけるのであります。

<追記>
Windows の FireFox 3.0.8 も、Mac OS-X の Safari 3.1.1 も、JPEG 画像の Content-Type は image/jpeg をセットします。
image/pjpeg をセットする狂ったブラウザは、IE ファミリーだけでありましょう。

電気ウナギ的○○

電気ウナギ的○○

About Back

コメント(1)

通りすがり |2011年6月30日 13:23

--
> $type =~ /image\/p*?jpeg/

$type =~ |image/p?jpeg|
--

この方がよろしいのではないかと。

電気ウナギ的○○

電気ウナギ的○○

About Back

トラックバック(2)

トラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/515

FirefoxやGoogle Chromeでは問題ないのに、Internet Explorerからだと画像をアップロードできないという問題が発生しました。...
続きを読む

[PHP]IE9でファイルアップロード時の問題

いつもパソコンの前 (2012年11月 9日 04:33)

WEBプログラマなら一度は嵌まるIE問題らしいですが、画像Upload時に「image/pjpeg」と言うファイルタイプに悩まされました。 (参照)電気ウ...
続きを読む

電気ウナギ的○○

About This Site

電気ウナギ的○○
岩国在住。広島で働く超零細IT企業社長のいわゆる社長日記。
何か、酒と食い物のことばかり書いているようで・・・お察しのとおり、肥満体です:-)


2011/06/24
iPhone用サイト公開

Create with jQuery, jQTouch.


CLOSE