Jak mogę wyświetlić plik PDF w przeglądarce Firefox, gdy serwer określa niewłaściwy typ zawartości?

4

Korzystam z przeglądarki Mozilla Firefox z wtyczką przeglądarki plików PDF. Wtyczka została poprawnie powiązana z plikami Adobe Reader, aby wyświetlić je w przeglądarce w ustawieniach.

Chciałbym móc przeglądać pliki PDF w przeglądarce Firefox zamiast pobierać je. To już działa poprawnie, gdy serwer WWW wskazuje, że plik ma Content-Typeod application/pdf. Jednak niektóre serwery WWW udostępniają inne Content-Typepliki PDF, takie jak application/octet-stream. (Zobacz ten przykład pliku PDF dostarczonego z plikiem innym niż pdfContent-Type .)

Mam spojrzał na pliku Firefoksa MimeTypes.rdf , i wydaje się tylko obsługiwać aplikacje mapowe na podstawie rozszerzeń plików dla plików innych niż w oparciu o Internet. (Wygląda na to, że używa tylko Content-Typedo mapowania plików internetowych).

W jaki sposób Firefox może wyświetlać wszystkie dokumenty PDF w przeglądarce, a nie tylko te z nimi application/pdf Content-Type?

Sam
źródło

Odpowiedzi:

1

Firefox nie ma kodu kontroli treści (np. filePolecenia linux ) do wykrywania rzeczywistego typu zawartości i polegania na Content-Typenagłówku.

Obejście: mozpluggerrozszerzenie

Zobacz 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.

Obejście: interakcja człowieka

Zapisz plik i otwórz go w eksploratorze plików ;-)

Obejście: błędna konfiguracja

Dodatkowym obejściem jest zhakowanie mimeTypes.rdfi przypisanie application/octet-streamtej samej wartości co application/pdf.

Nie radzę tego obejścia.


źródło
1
Opis rozszerzenia mozplugger wydaje się sugerować, że działa on tylko wtedy, gdy serwer sieciowy nie wskazuje Content-Type. (Używam systemu Windows, więc wygląda na to, że nie mogę go przetestować.)
Sam
1

Możesz użyć rozszerzenia Force Content-Type dla plików pdf z błędnym Content-Typenagłówkiem odpowiedzi.

Na przykład, jeśli serwer WWW zapewnia Content-Type: application/octet-stream, możesz dodać regułę, aby przekształcić ją na Content-Type: application/pdfpodstawie adresu URL pliku pdf:

wprowadź opis zdjęcia tutaj

ks1322
źródło