Firefox – How to view a PDF in Firefox when the server specifies the wrong content type

firefoxmime-typespdf

I am using Mozilla Firefox with a PDF viewer plug-in. The plug-in has been correctly associated with Adobe Reader files to view them in the browser in the settings.

I would like to be able to view PDF files in Firefox rather than downloading them. This already works correctly when a web server indicates that a file has the Content-Type of application/pdf. However, some web servers provide other Content-Types for PDFs, such as application/octet-stream. (See this example of a PDF served with a non-pdf Content-Type.)

I have looked at Firefox's MimeTypes.rdf file, and it appears to only support mapping applications based on file extensions for non-Internet-based files. (It looks like it only uses Content-Type to map Internet-based files.)

How can I have Firefox view all PDF documents in-browser rather than only the ones with the application/pdf Content-Type?

Best Answer

Firefox has no content inspection code (e.g. the linux file command) to detect the actual content type and rely on the Content-Type header.

Workaround: mozplugger extension

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

Workaround: human interaction

Save the file and open it in the file explorer ;-)

Workaround: misconfiguration

An additional workaround is to hack mimeTypes.rdf and assign application/octet-stream to the same value as application/pdf.

I don't advice this workaround.

Related Question