Parent Directory
|
Revision Log
updated by (anon)
1 | wakaba | 1.47 | [53] データの[[バイト列]]を検査してその[[MIME型]]などを決定することを、[DFN[[[sniffing]]]] といいます。 |
2 | |||
3 | [54] [DFN[[[MIME Sniffing]]]] 仕様書が [[Web]] における [[sniffing]] について規定しています。 | ||
4 | |||
5 | * 仕様書 | ||
6 | wakaba | 1.22 | |
7 | wakaba | 1.29 | [REFS[ |
8 | - [32] [CITE[MIME Sniffing]] ([TIME[2011-11-27 08:05:14 +09:00]] 版) <http://mimesniff.spec.whatwg.org/> | ||
9 | ]REFS] | ||
10 | |||
11 | wakaba | 1.49 | * その他の sniffing |
12 | |||
13 | ** JSON Sniffing | ||
14 | wakaba | 1.22 | |
15 | wakaba | 1.47 | [25] [[RFC 4627]] が [[JSON]] の [[charset]] [[sniffing]] について言及しています。 |
16 | wakaba | 1.22 | |
17 | wakaba | 1.49 | ** RDFa 処理器の Sniffing |
18 | wakaba | 1.45 | |
19 | [50] [[RDFa 1.1]] に基づく [[RDFa処理器]]は、 [[MIME型]]によって[[ホスト言語]]を決定しなければ[['''なりません''']]。 | ||
20 | [[MIME型]]を決定できないか未対応の時は、 [CODE(MIME)@en[[[application/xml]]]] としなければ[['''なりません''']]。 | ||
21 | [SRC[>>49]] | ||
22 | |||
23 | [51] >>50 の直後にこれと矛盾する次のような「NOTE」があります。 [[MIME型]]が無い時、 | ||
24 | [[DOCTYPE]]、[[根要素]]、[[拡張子]]、[[利用者]]定義の引数など追加の仕組みを用いても[['''構いません''']] [SRC[>>49]]。 | ||
25 | |||
26 | [REFS[ | ||
27 | - [49] [CITE@en[RDFa Core 1.1 - Second Edition]] ([TIME[2013-08-15 17:12:47 +09:00]] 版) <http://www.w3.org/TR/rdfa-core/#h3_processorconf> | ||
28 | ]REFS] | ||
29 | |||
30 | wakaba | 1.47 | * 歴史 |
31 | |||
32 | [55] [[IE]] は古くから [CODE(HTTP)@en[[[Content-Type:]]]] ヘッダーを一部無視して[[拡張子]]を使ったり | ||
33 | [[sniffing]] したりしており、それによって他の [[Webブラウザー]]と異なる解釈をしたり、 | ||
34 | それによって (本来の仕様上は問題ないはずのもので) [[セキュリティー]]上の問題を引き起こしたりして非難されていました。 | ||
35 | しかし間違った [CODE(HTTP)@en[[[Content-Type:]]]] を送出する[[起源鯖]]も広く存在しており、 | ||
36 | また他のブラウザーも [CODE(HTMLe)@en[[[script]]]] の [CODE(HTTP)@en[[[Content-Type:]]]] | ||
37 | を無視したり、 [CODE(HTMLe)@en[[[img]]]] では [[sniffing]] を行ったりしていて、 | ||
38 | [[sniffing]] を排除することは最早できない状況でした。 | ||
39 | |||
40 | [56] そうはいっても各 [[Webブラウザー]]が独自に異なる [[sniffing]] を行って標準仕様が存在しない状況では、 | ||
41 | サーバー側で[[セキュリティー]]上の問題を回避するための十分な対策を施すのも困難 (何をもって十分としてよいかすらわからない状態) | ||
42 | でありました。 | ||
43 | |||
44 | [57] 2007年頃になってようやく [[Ian Hickson]] によって [[WHATWG]] [[Web Applications 1.0]] (後の [[HTML5]]、 | ||
45 | 現在の [[HTML Standard]]) で [[Webブラウザー]]が実装するべき [[sniffing]] の規則が正確かつ詳細に規定されるようになりました。 | ||
46 | |||
47 | [58] その後 [[IETF]] と [[W3C]] の圧力によって [[sniffing]] は [[HTML5]] 仕様書から切り離され、 | ||
48 | この分野の専門家である [[Adam Barth]] による [[Internet Draft]] として [[IETF]] で出版されるようになりました。 | ||
49 | |||
50 | [59] しかしその作業も停滞していたことから 2012年、 [[Gordon P. Hemsley]] が引き取って再び [[WHATWG]] | ||
51 | で [[Living Standard]] として出版されるようになりました。 | ||
52 | |||
53 | wakaba | 1.48 | ;; [60] 同じような経緯で [[W3C]] に行った仕様書はその後 [[WHATWG]] で作業が再開された後 [[W3C]] |
54 | が劣化コピーを発行し続ける例が多いですが、 [[IETF]] はそういうことはしていません。 | ||
55 | |||
56 | wakaba | 1.22 | * メモ |
57 | wakaba | 1.2 | |
58 | [1] | ||
59 | [CITE[葉っぱ日記 - 「拡張子ではなく、内容によってファイルを開くこと」の拡張子は Content-Type ではないことに注意]] ([CODE[2007-04-04 15:46:35 +09:00]] 版) <http://d.hatena.ne.jp/hasegawayosuke/20070404/p1> | ||
60 | ([[名無しさん]] [WEAK[2007-04-04 23:46:23 +00:00]]) | ||
61 | |||
62 | [2] | ||
63 | [CITE@en[Re: Proposed Design Principles updated]] ([[Ian Hickson]] 著, [CODE[2007-04-05 14:51:37 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2007Apr/0232.html> | ||
64 | |||
65 | > One browser started ignoring CSS files in one very specific | ||
66 | case, namely only if the document had a DOCTYPE that, at the time, was | ||
67 | basically unused. (I was one of the two people pushing for this.) It broke | ||
68 | some sites, but comparatively few in the grand scheme of things. (Though | ||
69 | we still get bug reports about this today, so maybe it wasn't that good an | ||
70 | idea after all.) | ||
71 | |||
72 | ([[名無しさん]]) | ||
73 | |||
74 | |||
75 | [3] | ||
76 | [CITE[Mime sniffing data]] ([[Adam Barth <whatwg@...>]] 著, [TIME[2008-10-09 01:34:49 +09:00]] 版) <http://permalink.gmane.org/gmane.org.w3c.whatwg.discuss/15882> | ||
77 | |||
78 | [4] [CITE[Content-Type Processing Model ]] ([TIME[2009-01-10 07:14:52 +09:00]] 版) <http://webblaze.cs.berkeley.edu/2009/mime-sniff/mime-sniff.txt> | ||
79 | wakaba | 1.3 | |
80 | wakaba | 1.22 | [5] [CITE@en[Sam Ruby: Mime Sniff]] ([TIME[2009-01-12 10:24:59 +09:00]] 版) <http://intertwingly.net/blog/2009/01/09/Mime-Sniff> |
81 | |||
82 | [6] [CITE[IRC logs: freenode / #whatwg / 20090927]] | ||
83 | ([TIME[2009-11-30 23:26:32 +09:00]] 版) | ||
84 | <http://krijnhoetmer.nl/irc-logs/whatwg/20090927#l-135> | ||
85 | |||
86 | [7] [CITE[IRC logs: freenode / #whatwg / 20090927]] | ||
87 | ([TIME[2009-11-30 23:26:32 +09:00]] 版) | ||
88 | <http://krijnhoetmer.nl/irc-logs/whatwg/20090927#l-320> | ||
89 | |||
90 | [8] [CITE[IRC logs: freenode / #whatwg / 20090929]] | ||
91 | ([TIME[2009-12-02 08:29:55 +09:00]] 版) | ||
92 | <http://krijnhoetmer.nl/irc-logs/whatwg/20090929#l-357> | ||
93 | |||
94 | [9] [CITE[Bug 8479 – http content-type override mandatory for <object>]] | ||
95 | ([TIME[2010-01-10 22:59:48 +09:00]] 版) | ||
96 | <http://www.w3.org/Bugs/Public/show_bug.cgi?id=8479> | ||
97 | |||
98 | [10] [CITE@en[HTML5 Revision Tracker]] | ||
99 | ([TIME[2010-04-14 21:50:48 +09:00]] 版) | ||
100 | <http://html5.org/tools/web-apps-tracker?from=5041&to=5042> | ||
101 | |||
102 | [11] [CITE[''''''[''''''whatwg'''''']'''''' Video with MIME type application/octet-stream]] | ||
103 | ( ([TIME[2010-09-02 00:45:32 +09:00]] 版)) | ||
104 | <http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/028291.html> | ||
105 | |||
106 | [12] [CITE[IRC logs: freenode / #whatwg / 20100825]] | ||
107 | ( ([TIME[2010-09-04 09:44:11 +09:00]] 版)) | ||
108 | <http://krijnhoetmer.nl/irc-logs/whatwg/20100825#l-1199> | ||
109 | |||
110 | [13] [CITE@en[Speech Synthesis Markup Language (SSML) Version 1.1]] | ||
111 | ( ([TIME[2010-09-08 00:26:19 +09:00]] 版)) | ||
112 | <http://www.w3.org/TR/2010/REC-speech-synthesis11-20100907/#lexicon_type> | ||
113 | |||
114 | [14] [CITE['''['''whatwg''']''' Video with MIME type application/octet-stream]] | ||
115 | ([TIME[2010-12-09 18:00:19 +09:00]] 版) | ||
116 | <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-December/029393.html> | ||
117 | |||
118 | [15] [CITE@en[Web Applications 1.0 r5836 Bring the spec more in line with what the browsers do for video (largely, ignoring Content-Type). This will probably be tweaked further once Adam's draft has a section dedicated to sniffing media container formats.]] | ||
119 | ( ([TIME[2011-02-05 10:31:00 +09:00]] 版)) | ||
120 | <http://html5.org/tools/web-apps-tracker?from=5835&to=5836> | ||
121 | |||
122 | [16] [CITE[''''''[''''''websec'''''']'''''' Font sniffing]] | ||
123 | ( ([TIME[2011-01-28 00:21:17 +09:00]] 版)) | ||
124 | <http://www.ietf.org/mail-archive/web/websec/current/msg00235.html> | ||
125 | |||
126 | [17] [CITE@en[Web Applications 1.0 r5921 revert r5836 per http://lists.w3.org/Archives/Public/public-html/2011Mar/0002.html]] | ||
127 | ( ([TIME[2011-03-01 09:18:00 +09:00]] 版)) | ||
128 | <http://html5.org/tools/web-apps-tracker?from=5920&to=5921> | ||
129 | |||
130 | [18] [CITE@en[Re: Request for revert on bug 11984]] | ||
131 | ( ([[Ian Hickson]] 著, [TIME[2011-03-01 09:14:52 +09:00]] 版)) | ||
132 | <http://lists.w3.org/Archives/Public/public-html/2011Mar/0002.html> | ||
133 | |||
134 | [19] [CITE[IRC logs: freenode / #whatwg / 20110123]] | ||
135 | ( ([TIME[2011-03-05 11:46:54 +09:00]] 版)) | ||
136 | <http://krijnhoetmer.nl/irc-logs/whatwg/20110123> | ||
137 | |||
138 | [20] [CITE[IRC logs: freenode / #whatwg / 20110124]] | ||
139 | ( ([TIME[2011-03-05 23:14:05 +09:00]] 版)) | ||
140 | <http://krijnhoetmer.nl/irc-logs/whatwg/20110124> | ||
141 | |||
142 | [21] [CITE[IRC logs: freenode / #whatwg / 20110127]] | ||
143 | ( ([TIME[2011-03-10 07:30:55 +09:00]] 版)) | ||
144 | <http://krijnhoetmer.nl/irc-logs/whatwg/20110127> | ||
145 | |||
146 | [22] [CITE[IRC logs: freenode / #whatwg / 20110205]] | ||
147 | ( ([TIME[2011-03-19 23:45:14 +09:00]] 版)) | ||
148 | <http://krijnhoetmer.nl/irc-logs/whatwg/20110205#l-71> | ||
149 | |||
150 | [23] [CITE@en[Web Applications 1.0 r5979 10805]] | ||
151 | ( ([TIME[2011-04-09 07:12:00 +09:00]] 版)) | ||
152 | <http://html5.org/tools/web-apps-tracker?from=5978&to=5979> | ||
153 | |||
154 | [24] [CITE[drafts/sniff.xml at master from abarth's ietf-websec - GitHub]] | ||
155 | ( ([TIME[2011-02-13 13:01:23 +09:00]] 版)) | ||
156 | wakaba | 1.29 | <https://github.com/abarth/ietf-websec/blob/master/drafts/sniff.xml> |
157 | |||
158 | [26] [CITE[MIME Sniffing]] | ||
159 | ( ([TIME[2011-09-27 05:18:56 +09:00]] 版)) | ||
160 | <http://mimesniff.spec.whatwg.org/> | ||
161 | |||
162 | [27] [CITE@en[Web Applications 1.0 r6721 (WIP - MIMESNIFF has not yet been updated accordingly) Change the spec to use MIMESNIFF rules for text tracks instead of blindly honouring MIME types.]] | ||
163 | ( ([TIME[2011-10-21 08:27:00 +09:00]] 版)) | ||
164 | <http://html5.org/tools/web-apps-tracker?from=6720&to=6721> | ||
165 | |||
166 | [28] [CITE@en[Web Applications 1.0 r6823 Make appcache no longer check for the MIME type.]] | ||
167 | ( ([TIME[2011-11-11 09:36:00 +09:00]] 版)) | ||
168 | <http://html5.org/tools/web-apps-tracker?from=6822&to=6823> | ||
169 | |||
170 | [29] [CITE@en[Web Applications 1.0 r6826 Add warnings about media elements and track and how to determine the type and how we don't know what hte solution is.]] | ||
171 | ( ([TIME[2011-11-12 09:22:00 +09:00]] 版)) | ||
172 | <http://html5.org/tools/web-apps-tracker?from=6825&to=6826> | ||
173 | |||
174 | [30] [CITE@en[Web Applications 1.0 r6920 Remove vestiges of MIME type checking in appcache.Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=14701]] | ||
175 | ( ([TIME[2012-01-26 08:27:00 +09:00]] 版)) | ||
176 | <http://html5.org/tools/web-apps-tracker?from=6919&to=6920> | ||
177 | |||
178 | [31] [CITE@en[Web Applications 1.0 r6990 Factor out the prescan algorithm for reuse in other specs.]] | ||
179 | ( ([TIME[2012-02-14 06:06:00 +09:00]] 版)) | ||
180 | wakaba | 1.36 | <http://html5.org/tools/web-apps-tracker?from=6989&to=6990> |
181 | |||
182 | [33] [CITE[IRC logs: freenode / #whatwg / 20120801]] | ||
183 | ( ([TIME[2012-08-06 21:04:00 +09:00]] 版)) | ||
184 | <http://krijnhoetmer.nl/irc-logs/whatwg/20120801#l-248> | ||
185 | |||
186 | [34] [CITE@en[Web Applications 1.0 r7360 Make a BOM override HTTP headers.]] | ||
187 | ( ([TIME[2012-09-16 12:55:00 +09:00]] 版)) | ||
188 | <http://html5.org/tools/web-apps-tracker?from=7359&to=7360> | ||
189 | |||
190 | [35] [CITE[IRC logs: freenode / #whatwg / 20120928]] | ||
191 | ( ([TIME[2012-10-03 22:06:16 +09:00]] 版)) | ||
192 | <http://krijnhoetmer.nl/irc-logs/whatwg/20120928> | ||
193 | |||
194 | [36] [CITE[IRC logs: freenode / #whatwg / 20120928]] | ||
195 | ( ([TIME[2012-10-03 22:06:16 +09:00]] 版)) | ||
196 | <http://krijnhoetmer.nl/irc-logs/whatwg/20120928> | ||
197 | |||
198 | [37] [CITE[whatwg/mimesniff]] | ||
199 | ( ([TIME[2012-10-03 22:39:05 +09:00]] 版)) | ||
200 | <https://github.com/whatwg/mimesniff> | ||
201 | |||
202 | [38] [CITE[''''''[''''''whatwg'''''']'''''' '''['''mimesniff''']''' Review requested on MIME Sniffing Standard]] | ||
203 | ( ([TIME[2012-11-06 00:29:10 +09:00]] 版)) | ||
204 | <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-November/037787.html> | ||
205 | |||
206 | [REFS[ | ||
207 | - [39] [CITE[Hosting - Google Chrome]] ([TIME[2012-11-18 01:28:56 +09:00]] 版) <http://developer.chrome.com/extensions/hosting.html> | ||
208 | ]REFS] | ||
209 | |||
210 | [40] >>39 によると [[Chrome]] は未知の[[MIME型]]の sniffing で [CODE(MIME)@en[[[application/x-chrome-extension]]]] | ||
211 | wakaba | 1.45 | にも対応しているようです。 |
212 | |||
213 | [41] [CITE[Issue 7448 - chromium - CSS and JS files with MIME Type text/plain should still apply - An open-source browser project to help move the web forward. - Google Project Hosting]] | ||
214 | ( ([TIME[2012-11-18 01:42:41 +09:00]] 版)) | ||
215 | <http://code.google.com/p/chromium/issues/detail?id=7448> | ||
216 | |||
217 | [42] [CITE[IRC logs: freenode / #whatwg / 20121018]] | ||
218 | ( ([TIME[2012-11-18 00:24:44 +09:00]] 版)) | ||
219 | <http://krijnhoetmer.nl/irc-logs/whatwg/20121018#l-259> | ||
220 | |||
221 | [43] [CITE[IRC logs: freenode / #whatwg / 20121105]] | ||
222 | ( ([TIME[2012-11-24 13:19:40 +09:00]] 版)) | ||
223 | <http://krijnhoetmer.nl/irc-logs/whatwg/20121105#l-755> | ||
224 | |||
225 | [44] [CITE[IRC logs: freenode / #whatwg / 20121109]] | ||
226 | ( ([TIME[2012-11-26 22:30:44 +09:00]] 版)) | ||
227 | <http://krijnhoetmer.nl/irc-logs/whatwg/20121109> | ||
228 | |||
229 | [45] [CITE[Packaged Web Apps (Widgets) - Packaging and XML Configuration (Second Edition)]] | ||
230 | ( ([TIME[2012-11-22 21:22:20 +09:00]] 版)) | ||
231 | <http://w3c.github.com/packed-webapps/packaging/#rule-for-identifying-the-media-type-of-a-file> | ||
232 | |||
233 | [46] [CITE@en[Web Applications 1.0 r7701 Revert part of r5545 because bz changed his mind and this matches reality better. :-)]] | ||
234 | ( ([TIME[2013-02-07 08:10:00 +09:00]] 版)) | ||
235 | <http://html5.org/tools/web-apps-tracker?from=7700&to=7701> | ||
236 | |||
237 | [47] [CITE@en[Web Applications 1.0 r7701 Revert part of r5545 because bz changed his mind and this matches reality better. :-)]] | ||
238 | ( ([TIME[2013-02-07 08:10:00 +09:00]] 版)) | ||
239 | <http://html5.org/tools/web-apps-tracker?from=7700&to=7701> | ||
240 | |||
241 | [48] [CITE@EN[Authoritative Metadata]] | ||
242 | ( ([TIME[2013-04-05 19:44:14 +09:00]] 版)) | ||
243 | wakaba | 1.47 | <http://www.w3.org/2001/tag/doc/mime-respect-20130405.html> |
244 | |||
245 | [52] [CITE@en[Windows RSS Publisher's Guide (work-in-progress) - Microsoft RSS Blog - Site Home - MSDN Blogs]] | ||
246 | ( ([TIME[2013-12-04 04:55:23 +09:00]] 版)) | ||
247 | wakaba | 1.46 | <http://blogs.msdn.com/b/rssteam/archive/2005/08/02/publishersguide.aspx> |
admin@suikawiki.org | ViewVC Help |
Powered by ViewVC 1.1.24 |