What is MIME type "application/x-project"?

A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.

application/x-project is a non-standard MIME type. It signals that the file holds project information in a specific format.
The file is built to store settings, configurations, and structure details used by project management or software development tools. Its naming with the x- prefix means it is experimental or custom rather than officially registered with IANA.
The MIME type is typically associated with files like MPX that contain project data.
This format helps applications to reopen, edit, or share projects consistently. For more technical details on MIME types, check out the MIME article on Wikipedia.

Associated file extensions

Usage Examples

HTTP Header

When serving content with this MIME type, set the Content-Type header:


    Content-Type: application/x-project    
  

HTML

In HTML, you can specify the MIME type in various elements:


    <a href="file.dat" type="application/x-project">Download file</a>    
  

Server-side (Node.js)

Setting the Content-Type header in Node.js:


    const http = require('http');    
    
    http.createServer((req, res) => {    
      res.setHeader('Content-Type', 'application/x-project');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

What type of file uses the application/x-project MIME type?

This MIME type is most commonly associated with Microsoft Project Exchange (MPX) files. These files use the .mpx extension and store project management data, such as tasks, resources, and timelines, in an ASCII text format to allow data transfer between different programs.

How do I configure Apache to serve .mpx files correctly?

To ensure Apache serves these files with the correct header, add the following line to your .htaccess file or main configuration: AddType application/x-project .mpx. This prevents browsers from misinterpreting the file as plain text or a generic binary stream.

Why does the MIME type start with "x-"?

The x- prefix indicates that application/x-project is a non-standard or experimental type that is not officially registered with the IANA. It was created by software vendors to handle specific project data formats before a standardized type was available.

How do I add this MIME type to an Nginx server?

You can add the mapping in your nginx.conf file inside the types block. Add the line application/x-project mpx; to ensure Nginx sends the correct Content-Type header when users download project exchange files.

Will web browsers display application/x-project files natively?

No, modern web browsers (Chrome, Firefox, Edge) do not have built-in viewers for project management data. Instead of displaying the content, the browser will usually prompt the user to download the file or open it with an external application like Microsoft Project.

What software is required to open files with this MIME type?

You typically need project management software such as Microsoft Project, Primavera, or open-source alternatives like ProjectLibre. Since the underlying format is often text-based, you can also inspect the raw data using a simple text editor like Notepad++.

How do I fix 404 errors when downloading .mpx files on IIS?

IIS may block unknown file extensions by default. To fix this, open IIS Manager, select your site, click on MIME Types, and add a new entry with the file extension .mpx and the MIME type application/x-project.

General FAQ

What is a MIME type?

A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.

MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.

MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.

How do I find the MIME type for a file?

You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.

Why are multiple MIME types listed for one extension?

Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.