ฉันจะดู PDF ใน Firefox ได้อย่างไรเมื่อเซิร์ฟเวอร์ระบุประเภทเนื้อหาที่ไม่ถูกต้อง


4

ฉันกำลังใช้ Mozilla Firefox พร้อมด้วยปลั๊กอิน PDF viewer ปลั๊กอินเชื่อมโยงอย่างถูกต้องกับไฟล์ Adobe Reader เพื่อดูในเบราว์เซอร์ในการตั้งค่า

ฉันต้องการดูไฟล์ PDF ใน Firefox แทนที่จะดาวน์โหลด นี้ทำงานแล้วอย่างถูกต้องเมื่อเว็บเซิร์ฟเวอร์บ่งชี้ว่าไฟล์ที่มีของContent-Type application/pdfแต่บางเว็บเซิร์ฟเวอร์ให้คนอื่น ๆContent-Typeสำหรับไฟล์ PDF application/octet-streamเช่น (ดูตัวอย่างของ PDF ที่แสดงโดยไม่ใช้ pdfContent-Type )

ฉันดูไฟล์ MimeTypes.rdf ของ Firefoxและดูเหมือนว่าจะรองรับเฉพาะแอปพลิเคชั่นการแมปตามนามสกุลของไฟล์สำหรับไฟล์ที่ไม่ใช่อินเทอร์เน็ต (ดูเหมือนว่าจะใช้Content-Typeเพื่อจับคู่ไฟล์บนอินเทอร์เน็ตเท่านั้น)

ฉันจะให้ Firefox ดูเอกสาร PDF ทั้งหมดในเบราว์เซอร์แทนที่จะเป็นเฉพาะเอกสารที่มีได้application/pdf Content-Typeอย่างไร

คำตอบ:


1

Firefox ไม่มีรหัสการตรวจสอบเนื้อหา (เช่นfileคำสั่งlinux ) เพื่อตรวจจับประเภทเนื้อหาจริงและพึ่งพาContent-Typeส่วนหัว

วิธีแก้ปัญหา: mozpluggerส่วนขยาย

ดูman 7 mozplugger:

  extensions
          This is a comma separated list of extensions that should be associated with this particular mime type. The  exten‐
          sions are only used when a web server does not report what type of file it is, or when loading files directly from
          disk.

วิธีแก้ปัญหา: ปฏิสัมพันธ์ของมนุษย์

บันทึกไฟล์และเปิดใน file explorer ;-)

วิธีแก้ปัญหา: การกำหนดค่าผิดพลาด

วิธีแก้ปัญหาเพิ่มเติมคือการสับmimeTypes.rdfและกำหนดให้เป็นค่าเดียวกับapplication/octet-streamapplication/pdf

ฉันไม่แนะนำวิธีแก้ปัญหานี้


1
คำอธิบายของการขยาย mozplugger Content-Typeดูเหมือนจะบ่งบอกว่ามันจะทำงานเฉพาะเมื่อเว็บเซิร์ฟเวอร์ไม่ระบุ (ผมใช้ Windows ดังนั้นมันดูเหมือนว่าฉันไม่สามารถทดสอบมัน.)
แซม

1

คุณสามารถใช้ส่วนขยายForce Content-Typeสำหรับไฟล์ pdf ที่มีContent-Typeส่วนหัวการตอบสนองที่ไม่ถูกต้อง

ตัวอย่างเช่นหากเว็บเซิร์ฟเวอร์ให้Content-Type: application/octet-streamคุณสามารถเพิ่มกฎเพื่อแปลงให้เป็นไปContent-Type: application/pdfตาม url ไฟล์ pdf เช่นนี้

ป้อนคำอธิบายรูปภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.