Serving the .fp7 MIME type
Clicking an .fp7 file download link on a web page results in a page full of garbage characters.
How do you go about sharing your FileMaker Pro files on the web with others? I’m not referring to hosting files on FileMaker Server — I mean giving someone the entire file to use on their computer or mobile device. With the advent of FileMaker Go for the iPad and iPhone, it has become preferable to post files as a straight .fp7 file (without compressing them to a .zip archive container), so that FileMaker Go can recognize and acquire the file directly.
But what’s wrong with this picture, Sparky?
Well for one, this typically means you will now post two links — one zipped (.zip) and one uncompressed (.fp7). Choice is good, right? As long as it doesn’t introduce usability issues, sure. But this option isn’t ideal as it may confuse and slow the user experience, per Steve Krug’s “Don’t Make Me Think” book.
However the bigger usability issue is for non-FileMaker Go users, who want to download your FileMaker Pro file while browsing the web from their laptop or desk-bound computer. For that class of user, the .fp7 link may actually be broken, demonstrating the behavior described above (and here). (And telling the user they should click on the other link you provided is not the most user-centric response.) If you are a FileMaker developer who also creates and/or manages websites (or a webmaster adding .fp7 files), then the onus really is on you to make this experience more pleasant and productive.
So what gives? The most basic issue is that your web server hasn’t told the browser how to interpret the .fp7 file. Back in the early days of the Internet this type of issue was a common problem, especially for email client applications that didn’t know how to display (or play) the various media types (.gif, .jpeg, .wav, .aif, .mov, .doc, .txt, etc.). Thus, the concept of MIME types was invented. MIME is short for Multipurpose Internet Mail Extensions, a specification for formatting non-ASCII text messages so that they can be sent over the Internet (ref: http://en.wikipedia.org/wiki/Mime_type ). Web browsers also support various MIME types, so they can display or output files that are not in HTML format. MIME types were defined for many types of files, and it is also possible to create your own MIME types.
A media type is composed of at least two parts: a type, a subtype, and one or more optional parameters. For example, subtypes of text type have an optional charset parameter that can be included to indicate the character encoding, and subtypes of multipart type often define a boundary between parts.
The Solution is Easy Peasy:
The fix is in the hands of the site’s webmaster. The user can’t do much about it except right-click the link and save the file (they can also save the browser window’s contents via Save As… and override the browser to name the saved filename with extension .fp7). Ask whomever is responsible for the web server to add the MIME type “application/x-filemaker” for the .fp7 file extension. Methods to do this vary; on Apache the easiest way is through your control panel or by editing the apache_home/conf/mime.types config file.
That’s it! Now your web server will send along additional information so the web browser knows to save the file as a download rather than display a stream of characters in the window. And both your FileMaker Go and Pro users can use the same link to download your file (and happily ignore the zipped file link you also provided).