在哪里可以找到文本 MIME 类型的列表?
Posted
技术标签:
【中文标题】在哪里可以找到文本 MIME 类型的列表?【英文标题】:Where can I find a list of textual MIME types? 【发布时间】:2013-12-26 23:19:14 【问题描述】:我想列出可以通过 gzip 压缩的 MIME 类型。首先要包含的内容是那些以“text/”开头的内容。除此之外,我只能添加我认为是文本的那些我认为是文本的,比如“application/json”。
是否有我可以参考的规范或其他列表?
【问题讨论】:
【参考方案1】:IANA 管理official list of Media Types
但要知道哪些是文本的,您需要查阅提出它们的 RFC。
【讨论】:
【参考方案2】:这是 Perl 的列表。好像太小了……
https://github.com/mikegrb/File-Compressible/blob/master/lib/File/Compressible.pm#L12-L27
【讨论】:
【参考方案3】:也许更好的办法是列出一个类型列表以不尝试使用 gzip 压缩。这些将是您知道已经压缩的类型。特别是图像、视频和音频类型。
包容比独占更好,因为压缩已经压缩的内容只会影响服务器上的 CPU 时间,并且对带宽的影响微乎其微。另一方面,不压缩可以压缩的东西可能会对带宽产生很大影响,从而影响用户体验。可以添加许多不在您的列表中的类型。您将完全错过使用白名单压缩这些文件的好处。最好压缩你不知道的东西,而不要压缩你确定已经压缩的东西。
【讨论】:
但是随着新类型的添加或遇到未知类型,它们不会在黑名单中,因此它们将被压缩。我认为最好使用可压缩的白名单。 没有。在压缩方面出错。压缩已经压缩的东西没什么大不了的。不压缩可以压缩的东西会降低性能。【参考方案4】:如果您在这里寻找一个列表以放入您的 gzip_types
用于 nginx,这是一个很好的起点(从 /etc/nginx/mime.types
中对明显可压缩类型的快速扫描获得):
gzip_types text/css text/xml application/javascript application/atom+xml application/rss+xml text/mathml text/plain text/x-component image/svg+xml application/json application/vnd.google-earth.kml+xml application/x-perl application/xhtml+xml application/xspf+xml;
(text/html
始终包含在内,不应在gzip_types
中重复)
【讨论】:
以上是关于在哪里可以找到文本 MIME 类型的列表?的主要内容,如果未能解决你的问题,请参考以下文章