IIS6, обслуживающий незарегистрированные типы MIME

У меня есть веб-сервер IIS6 (на Win2003) странное поведение, которое, я думаю, является недокументированной "функцией" ...

Он обслуживает файлы SVG (расширение .svg) без регистрации в метабазе IIS. Он также не имеет типа * mime.

Для этого запроса:

GET /basic/file1.svg HTTP/1.1

ответ содержит

HTTP/1.1 200 OK
Content-Length: 32817
Content-Type: image/svg+xml

Итак ... откуда у IIS этот image/svg+xmlтип пантомимы?

Единственное место, где я нашел это в реестре, в HKEY_CLASSES_ROOT\MIME\Database. Но согласно всей информации MS, которую я нашел, источником для IIM разрешенных типов пантомимы является его собственная метабаза.

Кто-нибудь знает это поведение? Это может привести администратора IIS к ложному чувству безопасности ...

С наилучшими пожеланиями всем !!

10.12.2008 12:25:37
1 ОТВЕТ
РЕШЕНИЕ

IIS объединяет карты MIME из метабазы ​​и реестра (HKCR \ <extension>), чтобы получить список допустимых типов Mime.

Чтобы составить список времени метабазы, вы можете использовать:

adsutil.vbs get /MimeMap/mimemap

Который, к сожалению, плохо распечатывает карту пантомимы:

D:\Apps\Scripts>adsutil.vbs get /MimeMap/mimemap
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

MimeMap                         : (MimeMapList) ".asx,video/x-ms-asf" ".xml,text/xml" ".tsv,text/tab
-separated-values" ".ra,audio/x-pn-realaudio" ".sv4crc,application/x-sv4crc" ".spc,application/x-pkc
s7-certificates" ".pmc,application/x-perfmon" ".lit,application/x-ms-reader" ".crd,application/x-msc

Изменение одной строки в ADSUtil.VBS исправляет это (обратите внимание на «vbCRLF &»):

Строка 1655:

        MimeOutPutStr = MimeOutPutStr & """" & MimeEntry.Extension & "," & MimeEntry.MimeType & """ "

в

        MimeOutPutStr = MimeOutPutStr & vbCRLF & """" & MimeEntry.Extension & "," & MimeEntry.MimeType & """ "

Производит вывод как это:

D:\Apps\Scripts>adsutil.vbs enum  /MimeMap
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

KeyType                         : (STRING) "IIsMimeMap"
MimeMap                         : (MimeMapList)
".asx,video/x-ms-asf"
".xml,text/xml"
".tsv,text/tab-separated-values"
".ra,audio/x-pn-realaudio"
".sv4crc,application/x-sv4crc"
".spc,application/x-pkcs7-certificates"
".pmc,application/x-perfmon"
".lit,application/x-ms-reader"
".crd,application/x-mscardfile"
1
11.12.2008 20:43:37