บนเซิร์ฟเวอร์ Apache ฉันเก็บ docx หลายไฟล์ xlsx pptx ไว้
เบราว์เซอร์ไคลเอนต์บางคนคิดว่าสิ่งเหล่านี้เป็นไฟล์ซิปปกติและเปลี่ยนนามสกุลไฟล์เมื่อดาวน์โหลด ฉันจะทำให้มันไม่ทำอย่างนั้นได้อีกแล้ว
(ใช้เซิร์ฟเวอร์ Ubuntu)
บนเซิร์ฟเวอร์ Apache ฉันเก็บ docx หลายไฟล์ xlsx pptx ไว้
เบราว์เซอร์ไคลเอนต์บางคนคิดว่าสิ่งเหล่านี้เป็นไฟล์ซิปปกติและเปลี่ยนนามสกุลไฟล์เมื่อดาวน์โหลด ฉันจะทำให้มันไม่ทำอย่างนั้นได้อีกแล้ว
(ใช้เซิร์ฟเวอร์ Ubuntu)
คำตอบ:
ไฟล์เป็นไฟล์ ZIP ของเอกสาร XML เพิ่มสิ่งนี้ลงใน. htaccess ของคุณใน 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
เซิร์ฟเวอร์ไม่มีประเภท mime ที่เหมาะสมติดตั้งสำหรับไฟล์ ms ใหม่
เพิ่มสิ่งต่อไปนี้ในไฟล์ /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มีข้อมูลเกี่ยวกับปัญหานี้
ดูเหมือนว่าเว็บเซิร์ฟเวอร์ของคุณกำลังดูหมายเลขมายากลในไฟล์เหล่านี้และเห็นว่าเป็นไฟล์ซิป
ดูที่: http://www.webdeveloper.com/forum/showthread.php?t=162526
ฉันมีการควบคุมดูแลโดยรวมทั้งเซิร์ฟเวอร์และเครื่องไคลเอนต์ที่เกี่ยวข้องกับปัญหานี้และไม่มีวิธีแก้ไขปัญหาที่เสนอเหล่านี้ทำงานเพื่อแก้ไขปัญหานี้
ในที่สุดสิ่งเดียวที่แก้ไขปัญหานี้ให้ฉันคือ ....
1) ถอนการติดตั้ง 7-Zip (ดังนั้นเบราว์เซอร์จึงไม่เกี่ยวข้องกับไฟล์ zip)
2) (ไม่แน่ใจว่าจำเป็นต้องทำตามขั้นตอนนี้หรือไม่) แต่จากนั้นฉันดาวน์โหลด DOCX อีกครั้ง (โดยบังเอิญมันยังถูกแสดงเป็นไฟล์ ZIP) แต่คราวนี้ฉันได้รับแจ้งให้เปิดแอปพลิเคชันด้วยและ ฉันเลือก MSWORD ฉันไม่เลือก "เปิดด้วย MSWORD เสมอ" เพราะฉันไม่ต้องการให้ MSWORD เปิดไฟล์ ZIP เสมอ
3) ติดตั้งใหม่ 7-Zip
หลังจากนี้ความพยายามที่ตามมาทั้งหมดในการดาวน์โหลด DOCX จริง ๆ แล้วส่งผลให้ไฟล์ DOCX ถูกดาวน์โหลดและเปิดด้วยแอปพลิเคชัน MSWORD ที่เหมาะสม
หมายเหตุ: ก่อนที่คุณจะข้ามไปสู่ข้อสรุปที่ว่าฉันมีความสัมพันธ์ของไฟล์ที่ไม่สมบูรณ์ให้ฉันยืนยันว่าเมื่อปัญหานี้เกิดขึ้นฉันสามารถดับเบิลคลิกที่ DOCX ใด ๆ ใน explorer และ MSWORD จะเปิดมันเสมอ ปัญหานี้เกิดขึ้นเสมอและเกิดขึ้นเมื่อพยายามดาวน์โหลด / เปิด DOCX ด้วย IE8 เท่านั้น FF4 และ Chrome ทำงานได้อย่างไร้ที่ติ ฉันพยายามเพิ่มประเภท MIME ที่เหมาะสมให้กับ / etc / mime-types และ. htaccess ทางฝั่งเซิร์ฟเวอร์ ฉันยังลองปิดการใช้งาน "เปิดไฟล์ตามเนื้อหาไม่ใช่นามสกุลไฟล์" (แต่สิ่งนี้ทำให้เบราว์เซอร์เปิด DOCX เป็นข้อความ ASCII ที่อ่านไม่ได้) ตั้งค่า FEATURE_MIME_ * รีจิสตรีคีย์เป็น "0" และเพิ่ม URL เซิร์ฟเวอร์ไปยัง รายการ "ไซต์ที่เชื่อถือได้" อีกครั้งไม่มีปัญหาทางตรรกะอย่างเห็นได้ชัดสำหรับฉัน
ดาวน์โหลดhttp://packages.ubuntu.com/oneiric/mime-supportและติดตั้งด้วย dpkg -i ใช้งานได้ดีมาก!
PS: Apache บน Ubuntu และ Debian อ่านจาก /etc/mime.types