Mengapa docx, xlsx, pptx mengunduh dari server web sebagai file zip?

36

Di server Apache saya, saya telah menyimpan beberapa file docx, xlsx pptx.

Beberapa browser klien berpikir bahwa ini adalah file zip biasa dan mengubah ekstensi file saat mengunduh. Bagaimana saya membuatnya tidak melakukannya lagi.

(Menggunakan server Ubuntu)

daveiler
sumber
Jenis file ini berfungsi baik dengan IE9 tanpa membuat perubahan apa pun pada htaccess, httpd.conf, dll.

Jawaban:

34

File-file ini sebenarnya ZIP dokumen XML. Tambahkan ini ke .htaccess Anda di Apache

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
Kevin Kuphal
sumber
Saya memiliki masalah yang sama dan menambahkan ini ke .htaccess, tetapi hal yang sama masih terjadi di IE (bahkan setelah menghapus cache). Apakah Anda harus me-restart Apache agar ini berlaku?
supertrue
14

Server tidak memiliki tipe mime yang tepat yang diatur untuk tipe file ms baru

tambahkan berikut ini ke file /etc/mime.types dan restart apache dan masalahnya harus diperbaiki.

# 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 memiliki informasi tentang masalah ini

daveiler
sumber
karena ini adalah server saya dan saya memiliki akses ke /etc/mime.types, ini adalah jawaban terbaik untuk saya.
daveiler
di windows, path mungkin seperti <install dir untuk apache> \ apache \ conf \ mime.types
AJ.
Itu tidak bekerja dengan Apache2.4
rasanga
1

Saya memiliki kontrol administratif total baik dari server dan mesin klien yang terlibat dengan masalah ini dan TIDAK ada solusi yang diusulkan yang bekerja untuk memperbaiki masalah ini.

Pada akhirnya, satu-satunya hal yang memperbaiki masalah ini bagi saya adalah ....

1) uninstall 7-Zip (sehingga browser tidak ada hubungannya dengan file zip)

2) (Tidak yakin apakah langkah ini diperlukan, tapi) Saya kemudian mengunduh DOCX lagi, (di mana, secara kebetulan, ini masih disajikan sebagai file ZIP), namun, kali ini saya diminta untuk aplikasi apa untuk membukanya dengan dan Saya memilih MSWORD. Saya tidak memilih "Selalu buka dengan MSWORD", karena saya tidak ingin MSWORD selalu membuka file ZIP.

3) Instal ulang 7-Zip.

Setelah ini, semua upaya berikutnya untuk mengunduh DOCX, sebenarnya menghasilkan file DOCX yang diunduh dan dibuka dengan aplikasi MSWORD yang sesuai.

CATATAN: Sebelum Anda melompat ke kesimpulan bahwa saya hanya memiliki asosiasi file yang rusak, izinkan saya mengkonfirmasi, bahwa ketika masalah ini terjadi, saya bisa mengklik dua kali pada DOCX dalam penjelajah dan MSWORD akan selalu membukanya. Masalah ini selalu dan hanya terjadi ketika mencoba mengunduh / membuka DOCX dengan IE8. FF4 dan Chrome keduanya bekerja dengan sempurna. Saya mencoba menambahkan tipe MIME yang tepat ke / etc / mime-types dan .htaccess di sisi server. Saya juga mencoba Menonaktifkan "Buka file berdasarkan konten, bukan ekstensi file" (tapi ini hanya mengakibatkan browser membuka DOCX sebagai teks ASCII yang tidak dapat dibaca), mengatur kunci registri FEATURE_MIME_ * menjadi "0", dan menambahkan URL server ke Daftar "Situs Tepercaya". Lagi-lagi, TIDAK ADA SOLUSI LOGIS INI YANG BERLAKU BEKERJA BAGI SAYA.

Ken Banks
sumber
sangat mungkin asosiasi di desktop Anda untuk file .docx lokal menjadi benar sementara masih tidak cocok dengan aplikasi / vnd.openxmlformats-officedocument.wordprocessingml.document file dari server web. Periksa nilai registri HKCR \ .docx \ ContentType
James