为什么 docx、xlsx、pptx 从网络服务器下载时是作为 zip 文件?

为什么 docx、xlsx、pptx 从网络服务器下载时是作为 zip 文件?

在我的 Apache 服务器上,我存储了几个 docx、xlsx pptx 文件。

有些客户端浏览器会认为这些是常规 zip 文件,并在下载时更改文件扩展名。我该如何让它不再这样做呢?

(使用 Ubuntu 服务器)

答案1

这些文件实际上是 XML 文档的 ZIP 文件。将其添加到 Apache 中的 .htaccess 中

AddType application/vnd.ms-word.document.macroEnabled.12 docm
AddType application/vnd.openxmlformats-officedocument.wordprocessingml.document docx
AddType application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx
AddType application/vnd.ms-powerpoint.template.macroEnabled.12 potm
AddType application/vnd.openxmlformats-officedocument.presentationml.template potx
AddType application/vnd.ms-powerpoint.addin.macroEnabled.12 ppam
AddType application/vnd.ms-powerpoint.slideshow.macroEnabled.12 ppsm
AddType application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx
AddType application/vnd.ms-powerpoint.presentation.macroEnabled.12 pptm
AddType application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
AddType application/vnd.ms-excel.addin.macroEnabled.12 xlam
AddType application/vnd.ms-excel.sheet.binary.macroEnabled.12 xlsb
AddType application/vnd.ms-excel.sheet.macroEnabled.12 xlsm
AddType application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx
AddType application/vnd.ms-excel.template.macroEnabled.12 xltm
AddType application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx

答案2

服务器没有为新的 ms 文件类型设置正确的 mime 类型

将以下内容添加到 /etc/mime.types 文件并重新启动 apache,问题就解决了。

# Added by myname 2009-06-03
application/vnd.ms-word.document.macroEnabled.12                        docm
application/vnd.openxmlformats-officedocument.wordprocessingml.document docx
application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx
application/vnd.ms-powerpoint.template.macroEnabled.12                  potm
application/vnd.openxmlformats-officedocument.presentationml.template   potx
application/vnd.ms-powerpoint.addin.macroEnabled.12                     ppam
application/vnd.ms-powerpoint.slideshow.macroEnabled.12                 ppsm    
application/vnd.openxmlformats-officedocument.presentationml.slideshow  ppsx
application/vnd.ms-powerpoint.presentation.macroEnabled.12              pptm
application/vnd.openxmlformats-officedocument.presentationml.presentation       pptx
application/vnd.ms-excel.addin.macroEnabled.12                          xlam
application/vnd.ms-excel.sheet.binary.macroEnabled.12                   xlsb
application/vnd.ms-excel.sheet.macroEnabled.12                          xlsm
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet       xlsx    
application/vnd.ms-excel.template.macroEnabled.12                       xltm    
application/vnd.openxmlformats-officedocument.spreadsheetml.template    xltx

http://www.webdeveloper.com/forum/showthread.php?t=162526有关于此问题的信息

答案3

听起来您的网络服务器正在查看这些文件中的神奇数字,并发现它们是 zip 文件。

看一下:http://www.webdeveloper.com/forum/showthread.php?t=162526

答案4

下载http://packages.ubuntu.com/oneiric/mime-support,然后使用 dpkg -i 安装。效果很好!

PS:Ubuntu 和 Debian 上的 Apache 从 /etc/mime.types 读取

相关内容