【发布时间】:2010-09-15 19:28:34
【问题描述】:
我相信这个问题有一个简单的答案。
我有一个 docx 文件,尝试下载时出错(找不到文档).... .doc 很好 .txt 也很好。我确信这只是一个 iis 设置,服务器上的权限对于所有文件都是相同的。
【问题讨论】:
标签: iis mime-types
我相信这个问题有一个简单的答案。
我有一个 docx 文件,尝试下载时出错(找不到文档).... .doc 很好 .txt 也很好。我确信这只是一个 iis 设置,服务器上的权限对于所有文件都是相同的。
【问题讨论】:
标签: iis mime-types
是的,它只是一个 IIS 设置:默认情况下,it will only serve files for which the extension matches a defined MIME type。
要允许下载 .docx 文件,请按照上面链接的知识库文章中的步骤操作:
请注意,知识库文章使用通用的 application/octet-stream MIME 类型:虽然这通常应该可以工作,但如果存在更具体的 MIME 类型,例如 application/msword,最好使用它。
【讨论】:
在您所说的上述解决方案的第 5 步中
在 MIME 类型框中,键入 application/msword。
“application/msword”MIME 类型是 word 2003“.doc”文件的类型。 word 2007 ".docx" 文件的正确 MIME 类型是:
application/vnd.openxmlformats-officedocument.wordprocessingml.document
请参阅this 帖子。
【讨论】:
谢谢,这很有用。
如果您有兴趣 .pptx (Powerpoint 2007) 的 MIME 类型是
application/vnd.openxmlformats-officedocument.presentationml.presentation
和 .xlsx (Excel 2007) 是
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
[这些在哪里转置。我现在已经更正了,谢谢你指出斯文。]
【讨论】:
如果在 IIS(6.0 及更高版本)中没有与扩展关联的 mime 类型,它将为您提供 404。请参阅Requests for static files return 404 error (IIS 6.0)。 (编辑:原始的 MSDN 链接在 2017 年年中已失效,the Internet Archive has a copy。尽管它是为 IIS6 编写的,但该信息仍然适用于现代 IIS 版本。)
除此之外,仅仅因为您没有指定 where 就会出现错误:当您禁止在标头中缓存时,客户端上可能会发生类似的行为。但这是一个普遍问题,不受 .docx 约束。
【讨论】: