MHTML

網頁封存檔英語:或,缩写mhtml)是種儲存檔案格式,在RFC 2110中定義,後經RFC 2557修訂。微軟稱之單一檔案網頁单个文件网页(Single-File Web Page)[1][2][3]

MHTML
IE使用的圖示
.mht, .mhtml
multipart/related
application/x-mimearchive
格式类型置标语言
延伸自HTML
标准RFC 2557(1999年推荐)

其以多用途互聯網郵件擴展格式,應用HTML郵件訊息相同技術開發,將一個多附件網頁(如包含大量圖片Flash動畫Java小程序的網頁)儲存成單一檔案[4],副檔名為.mhtIE)或.mhtmlChromium),支援瀏覽器對此兩種副檔名皆可設定讀取。由於IE最早使用,有時被簡稱MHT。

與HTML差異

HTML頁面中的圖形和其他功能可以分開存放,需要原始文件上引用,也可以通過data URI scheme等途徑嵌入其中。MHTML則把網頁及其附件皆儲存為單一檔案。

創建及編輯

Microsoft OfficeWord[4]ExcelPowerPointAccess)能夠創建及編輯MHTML檔案。

Linux平台上,程式kmhtConvert可將文件轉換為MHTML格式。

浏览器的支持

有些瀏覽器具有原生的这种把網頁保存為MHTML的方式,而有些瀏覽器可直接通過第三方的擴展支持MHTML格式。由於保存為MHTML的方式未經標準化,因此各瀏覽器讀取的效果略有不同。

Internet Explorer

Microsoft Internet Explorer自5.0版支持MHTML格式,是第一個支持MHTML文件的瀏覽器。

Opera

Opera自9.0版支持把網頁保存為MHTML文件,或讀取MHTML文件。[5]但基於WebKit/Blink的Opera 15卻未提供此功能,直到Opera 16才恢復。

現時通過opera://flags#save-page-as-mhtml啟用實驗性的選項。

Firefox

Firefox不支援讀寫MHT文件。[6]在57.0之前有兩個這樣的擴展是免費提供的,如Mozilla Archive Format 页面存档备份,存于UnMHT

Google Chrome

Chrome創建MHTML文件可以通過啟用chrome://flags#save-page-as-mhtml這個實驗性的選項(25.0起)(現已移除),[7]或是通過用於擴展程式的API(35.0起)。[8]

Safari

Safari不提供对MHTML的支持,代之以苹果公司自创的Webarchive格式,OS X的版本中还提供保存为PDF选项。也有人试图为Safari创建读写MHTML文件的扩展。

Konqueror

Konqueror需要使用mhtconv 页面存档备份,存于扩展以实现对MHTML的支持。

ACCESS NetFront

NetFront 3.4(像是索尼爱立信K850等设备上的)可读取或保存MHTML文件。

Pale Moon

Pale Moon需要安裝MHT文件讀寫的擴展。有一個這樣的擴展是免費提供的,即MozArchiver 页面存档备份,存于

GNOME Web

最近的GNOME Web版本可以存取MHTML。

Vivaldi

Vivaldi可以通過vivaldi://flags#save-page-as-mhtml啟用實驗性的選項。

MHT阅读器

一些商业或民间开发者设计了MHT文件阅读器,还提供转换为其它格式(如转换为PDF)的选项。

格式

MHTML檔案的第一部分是電子郵件檔頭,第二部分是常規的HTML源碼,後續部分是由各自的URL標識的附件,并以base64格式編碼。

該檔案與 .eml(電子郵件)具有互換性,二者的副檔名可以相互交換。一份 .eml 檔案可以作為電子郵件發送,也可以通過電郵客戶端顯示,一條電郵資訊可以用 .mhtml 或 .mht 副檔名存儲,並通過一些網頁瀏覽器或者文本編輯器顯示。

示例如下:

Subject:標題
Date: Wed, 15 Dec 2004 10:05:01 +1000
Content-Type: multipart/related;
Content-Transfer-Encoding: quoted-printable
Content-Location: file://C:/fishier.html
This is a multi-part message in MIME format.

Content-Type: text/html;
<HTML>
 <HEAD>
  <TITLE>Title</TITLE>
 </HEAD>
 <BODY>
   ...
 </BODY>
</HTML>

Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: file://C:/image.gif
RHLJbDYX0KhHzv7yGcCgghhgHLJbDYX0KhHzv7yGcChkNdjn+Nfn+NXm98/i98rf9sfe9b/Z9L3X
87fU8qP8afL8AHzvfg7yGcChkNIwMZHLJbDYX0KhHzv37yGcChkNIw2Oj5AAAZIAlhAAACwAAAAA
er8JhHg8PhgQBrPZwG673+6CoUCv2+91gn5PGPT7fgOCg4SFhQKIiYoCAY2Oj5AAAZIAlJWXACEA
4SFh==

其中Subject为文档标题,Content-Type为文件的MIME属性,Content-Location为原始文件的地址,Content-Transfer-Encoding为编码格式。

参见

參考資料

  1. . Microsoft Docs. 2020-06-12. (原始内容存档于2020-06-21) (英语).
  2. . Microsoft Docs. 2020-06-13. (原始内容存档于2020-06-21) (中文(台灣)‎).
  3. . Microsoft Docs. 2020-06-13. (原始内容存档于2020-06-19) (中文(中国大陆)‎).
  4. David J. Clark. . John Wiley & Sons. 2008. ISBN 9780470377437.
  5. Santambrogio, Claudio. . Opera Software. 10 March 2006 [2009-05-15]. (原始内容存档于2006-03-21).
  6. . [2018-10-23]. (原始内容存档于2020-12-15).
  7. How to save a web page as MHT in chrome? 页面存档备份,存于, superuser.com
  8. . developer.chrome.com. [2019-11-10]. (原始内容存档于2020-05-09).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.