博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自动注册 IIS6 的 MIME 类型
阅读量:4947 次
发布时间:2019-06-11

本文共 3006 字,大约阅读时间需要 10 分钟。

原文 

由于IIS5和IIS6有很多的MIME类型没有设置,其中还包括了FLV(video/x-flv),上篇文章描述了制作,而它也仅仅实现了IIS的自动安装。像注册 ASP.NET 到 IIS 都没有制作,还有这些MIME的添加,现在就来补充下这些方法。

注册 ASP.NET 到 IIS

一想就很简单了,不就是调用 .net framework 对应的注册程序嘛。你可以写一个批处理程序,在安装 IIS 服务之后执行,代码如下:

if exist %SystemRoot%\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe %SystemRoot%\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i -enable

if exist %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe %SystemRoot%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -iru -enable

自动注册 MIME 类型

回到本文的主题,我们做类似 ClickOnce 部署等需要注册额外的 MIME 才能使 IIS 支持使用(这是IIS的安全策略)。如果是IIS7的话当然就不用设置这些了,他们是 .net framework 3.0 的内容。我从 MSDN 里找到一个 VBS 注册脚本:

' This script adds the necessary Windows Presentation Foundation MIME types ' to an IIS Server.' To use this script, just double-click or execute it from a command line.' Running this script multiple times results in multiple entries in the IIS MimeMap.Dim MimeMapObj, MimeMapArray, MimeTypesToAddArray, WshShell, oExecConst ADS_PROPERTY_UPDATE = 2 ' Set the MIME types to be addedMimeTypesToAddArray = Array(".manifest", "application/manifest", ".xaml", _    "application/xaml+xml", ".application", "application/x-ms-application", _    ".deploy", "application/octet-stream", ".xbap", "application/x-ms-xbap", _    ".xps", "application/vnd.ms-xpsdocument") ' Get the mimemap object Set MimeMapObj = GetObject("IIS://LocalHost/MimeMap")' Call AddMimeType for every pair of extension/MIME typeFor counter = 0 to UBound(MimeTypesToAddArray) Step 2    AddMimeType MimeTypesToAddArray(counter), MimeTypesToAddArray(counter+1)Next' Create a Shell objectSet WshShell = CreateObject("WScript.Shell")' Stop and Start the IIS ServiceSet oExec = WshShell.Exec("net stop w3svc")Do While oExec.Status = 0    WScript.Sleep 100LoopSet oExec = WshShell.Exec("net start w3svc")Do While oExec.Status = 0    WScript.Sleep 100LoopSet oExec = Nothing' Report status to userWScript.Echo "Windows Presentation Foundation MIME types have been registered."' AddMimeType SubSub AddMimeType (Ext, MType)    ' Get the mappings from the MimeMap property.     MimeMapArray = MimeMapObj.GetEx("MimeMap")     ' Add a new mapping.     i = UBound(MimeMapArray) + 1     Redim Preserve MimeMapArray(i)     Set MimeMapArray(i) = CreateObject("MimeMap")     MimeMapArray(i).Extension = Ext     MimeMapArray(i).MimeType = MType     MimeMapObj.PutEx ADS_PROPERTY_UPDATE, "MimeMap", MimeMapArray    MimeMapObj.SetInfo    End Sub

  

第10到16行,是我们要加入的MIME类型,如果你还要加入FLV,就再添加一行,写上:

".flv","video/x-flv", _
保存成 RegisterIISMimeTypes.vbs 后,双击它,或者用命令行调用(可以将此命令行写在批处理中):
cscript.exe RegisterIISMimeTypes.vbs
这样就行了。

如果你想对这方面有所了解,需要掌握以下知识:

· IIS
· IIS MIME 类型
· Windows 脚本宿主(VBS脚本)
· 批处理
· .NET Framework ClickOnce

我将这些有用的文件传到网上,你可以下载研究,文件包中还包括了显示当前IIS MIME类型的VBS,用cscript.exe命令调用。

-------------------------------------------------

类型: 7Z 压缩文件 大小: 1.8 KB上传时间 2009-4-3 10:34119.112.166.203 参考:

posted on
2014-04-13 02:17 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/lonelyxmas/p/3661723.html

你可能感兴趣的文章
前端笔记二:DOM事件
查看>>
JSTL标签详解以及应用实例
查看>>
第三个spring冲刺第8天
查看>>
UVaLive 5031 Graph and Queries (Treap)
查看>>
轻松学习java可重入锁(ReentrantLock)的实现原理(转 图解)
查看>>
实验六 在应用程序中播放音频和视频
查看>>
云计算概念
查看>>
负载均衡
查看>>
1. 麦克劳林展开式
查看>>
常用函数
查看>>
for循环
查看>>
[bzoj4872] [洛谷P3750] [六省联考2017] 分手是祝愿
查看>>
Shiro Quartz之Junit測试Session管理
查看>>
lunix shell 基础经常使用整理
查看>>
hdu 4961 Boring Sum(数学题)
查看>>
为什么没有好用的Android游戏引擎?
查看>>
Achieving High Availability and Scalability - ARR and NLB
查看>>
jQuery的deferred对象详解
查看>>
命令行连WiFi
查看>>
PHP扩展下载指导
查看>>