admin管理员组文章数量:1531930
2024年4月3日发(作者:)
-
关于MIME的介绍
MIME (Multipurpose Internet Mail Extensions,多目的Internet邮件扩展)
用户可以通过使用MIME以设置服务器传送多媒体如声音和动画信息,这一切可能通过CGI
脚本来进行。在下面的文章中,你可以了解到一此关于MIME和关于在网络上使用MIME
的知识。
MIME是一种技术规范,它原来是用于电子邮件的,现在也可以用于浏览器上,传送可以供
浏览器识别的信息,关于MIME的知识并是十分难懂的,有一些基本的计算机概念就可以
理解了,但如果要进一步使用,就必须注意内容。实际上,我们在上网的时候就已经接触到
了MIME,只是浏览器和服务器在底层实现了。
MIME有时候被错误地理解为多媒体Internet邮件扩展(Multimedia Internet Mail Extensions),
这是一个错误,但是MIME在网上经常用于多媒体应用程序,所以人们以为这是它是多媒
体邮件扩展,而实际上它应该被称为多用途Internet邮件扩展(Multipurpose Internet Mail
Extensions),这一点一定要注意,因为有时候内容里根本没有非文本成份。
MIME对于邮件系统的扩展是巨大的,因为在MIME出现以前,信件内容如果要包括声音
和动画,就必须把它变为ASCII码或把二进制的信息变成可以传送的编码标准,而接收方
必须经过解码才可以获得声音和图画信息。MIME提供了一种可以在邮件中附加多种不同编
码文件的方法。这与原来的邮件是大大不同的。而现在MIME已经成为了HTTP协议标准
的一个部分。
MIME是服务器通知客户机传送文件是什么类型的主要方法,客户机浏览器也通过MIME
告诉服务器它的参数。在网上,如果接收到的文件没有MIME头,就默认它为HTML格式。
但这样也不好,因为当MIME的包头是text/plain时,浏览器将直接显示而不关心它的什么
字体,颜色之类的参数,这样显示出来的内容可不是很好看呀。
MIME头是什么样子要看它是用在电子邮件中还是用在浏览器上,两者内容可能有所不同。
对于邮件头来说,版本号,内容类型声
明,编码方式,内容描述是必不可少的。这是用于邮件头中的格式,在下面,我们将重点说
到在HTTP中传送MIME头,这时MIME头要简单一些。
下例是一个邮件的标准MIME头:
Mime-Version: 1.0 //版本号:1.0
Content-Type: multipart/mixed; boundary="ry.750407228" //内容类型是多种的
--ry.750407228
Content-Type: text/plain; charset=US-ASCII //内容类型:文本,字符是ASCII的
Content-Transfer-Encoding: 7bit //编码方式:7位
Content-Description: cc:Mail note part
在用于浏览器时,用户不需要知道那么多的信息,所以MIME头就比较简单了。在访问一
个网页时,浏览器和服务器之间产生一个会话,作为请求内容的一部分,浏览器发送它能够
理解的MIME类型的描述,这就告诉服务器,浏览器除了网页外还可以支持什么,服务器
对这个信息一般不作为什么修改。
服务器通过发向客户机的MIME头通知客户浏览器内容是什么,我们看看下面这个头:
Content-type: text/html
在实现的时候,一定要注意MIME头后要跟一个空行,不然这个头会被浏览器忽略,这个
头会被当作文本显示出来。当服务器传送GIF图象时,头会如下:
Content-type: image/gif
Content-transfer-encoding: BINARY
通常的MIME内容类型并不起什么作用,浏览器可以自己识别内容的类型,但是如果您使
用一些另外的类型,这个问题可就大了,如果你使用了text/postscript,那浏览器会显示下载
窗口,或就把这个东西显示出来,那可就不好办了。下面我们介绍一下标准MIME类型。
Text. 文本,它用于描述不同类型的文本,包括通常的文本,PostScript和HTML,虽然HTML
不是一个可能的子类型。
Multipart. 多类型,指出此信息包括多种信息,不止一种类型。
Message. 用于标记不同类型的消息。
Application. 应用类型。
Image. 图象,用于标明图形文件。
Audio. 声音,用于标明声音文件。
Video. 影象,用于标明动画文件。
每个MIME类型有不同的子类型,实际上,您不可能单独使用类型而不使用子类型,只有
一个例外,这就是"telnet"类型。IANA提供45种类型/子类型对支持。当然,标准是开放的,
允许用户自定义自己的类型,用户自定义类型要以“X-”开始以示区别。在添加新的类型
时,一定要注意,尽量使用已有的类型达到自己的目的。如果非要添加新的类型,一定要保
证服务器一方支持这种类型,也要保证客户端也能够通过一些应用程序(如插件)来识别新
类型。如果您的网站的访问者很广,不要轻易使用新类型,要么使用已有的类型,或者向
IANA提出注册请求。
在IIS中,你可以指定某种扩展名文件由服务器处理的方式,比如 你可以指定 .mp3 的
文件使用 数字音频的方式处理。
比如我们通常访问微软网站,很多网页的扩展名是 .mspx ,但可能你没见过这种扩展
名的网页文件,微软的网站是采用 技术的,理应当扩展名是 .aspx ,但为什么在
微软的网站中 的网页的扩展名是 .mspx 而不是 .aspx? 怎么实现的呢?其实这
微软这么做并没有什么特别的意义,只是看起来更加个性一点,实现方法就是 将 .mspx 文
件 注册 MIME 类型为 页面,就是说,当你访问这种文件时,微软的服务器会
按照 的方式处理。
通过上面的介绍,你应该知道了,MIME类型 就是 告诉服务器,某种扩展名的文件的
处理方式。
通常,如果一个文件你没有注册其 MIME 类型,直接通过URL访问的话,这个文件
就会被下载下来。假设你删除了 IIS 中,htm/html 文件的 MIME 类型,当你访问这个文
件的时候,你将看不到这个网页,而是这个网页被你下载下来了。在 Windows Server
2003/2008 中,微软为了安全起见,默认情况下,没有注册 MIME 类型的文件是不可以被
下载的,当你访问没有注册的文件类型时,将会返回出错页面。
我先通过图片来讲解 IIS 中添加与修改 MIME 类型的方法(由于我现在使用的是
Microsoft Windows XP Professional,所以我使用XP PRO自带的 IIS 5.1简化版)。
打开IIS的控制台,打开需要操作的网站的属性对话框。
选择 HTTP 头选项卡,打开 MIME 映射中的 文件类型 按钮。
版权声明:本文标题:IIS使用自定义MIME类型详解 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1712106310a343497.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论