docx、xlsx、pptxがWebサーバーからzipファイルとしてダウンロードされるのはなぜですか?


36

Apacheサーバーに、いくつかのdocx、xlsx pptxファイルを保存しました。

一部のクライアントブラウザーは、これらを通常のzipファイルと見なし、ダウンロード時にファイル拡張子を変更します。どうすればそれをもうやめますか。

(Ubuntuサーバーを使用)


これらのファイルタイプは、htaccess、httpd.confなどに変更を加えなくてもIE9で正常に機能します。

回答:


34

ファイルは、実際には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

私は同じ問題を抱えており、これを.htaccessに追加しましたが、IEでも同じことが起こります(キャッシュを削除した後でも)。これを有効にするには、Apacheを再起動する必要がありますか?
スーパートゥルー

14

サーバーには、新しい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にはこの問題に関する情報があります


これは私のサーバーであり、/ etc / mime.typesにアクセスできるため、これが私にとって最良の答えです。
ダヴェイラー

Windowsでは、パスは<apacheのインストールディレクトリ> \ apache \ conf \ mime.types
AJのようになります。

Apache2.4
rasanga


1

この問題に関連するサーバーとクライアントマシンの両方を完全に管理しているが、これらの提案された解決策のどれもこの問題を修正するために働いた。

最後に、私にとってこの問題を修正したのは…だけでした。

1)7-Zipをアンインストールします(したがって、ブラウザーにはzipファイルに関連付けるものがありません)

2)(この手順が必要かどうかわかりませんが)DOCXを再度ダウンロードしました(偶然にもZIPファイルとして提示されています)が、今回はどのアプリケーションで開くかを尋ねられます。 MSWORDを選択します。「常にMSWORDで開く」を選択しないのは、MSWORDが常にZIPファイルを開くことを望まないからです。

3)7-Zipを再インストールします。

この後、DOCXをダウンロードするすべての後続の試行により、実際にDOCXファイルがダウンロードされ、適切なMSWORDアプリケーションで開かれます。

注:単にファイルの関連付けが壊れているという結論にジャンプする前に、この問題が発生したときに、エクスプローラーでDOCXをダブルクリックすると、MSWORDが常にそれを開くことを確認させてください。この問題は、IE8でDOCXをダウンロードまたは開こうとしたときにのみ発生していました。FF4とChromeはどちらも完璧に機能しました。適切なMIMEタイプを/ etc / mime-typesとサーバー側の.htaccessに追加してみました。また、「ファイル拡張子ではなくコンテンツに基づいてファイルを開く」(ただし、ブラウザがDOCXを判読できないASCIIテキストとして開くだけ)を無効にし、FEATURE_MIME_ *レジストリキーを「0」に設定し、サーバーURLを「信頼済みサイト」リスト。繰り返しますが、これらのどれも私にとってはうまくいきませんでした。


ローカルの.docxファイルのデスクトップ上の関連付けが正しい場合でも、Webサーバーのapplication / vnd.openxmlformats-officedocument.wordprocessingml.documentファイルと一致しない場合があります。レジストリ値HKCR \ .docxの\ ContentTypeをチェック
ジェームズ

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.