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

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

application/x-dosexec marks files that contain executable binary code for DOS/Windows systems.
It tells the operating system that the file is a program meant to run, not just data.
These files carry instructions directly for execution. They are used when launching software or running system routines.
Common file types include the traditional EXE programs, dynamic link libraries like DLL, and simple command files such as COM.
This MIME type helps systems and applications decide how to handle these binary executables securely and correctly. For more on file types, visit Filext.

Associated file extensions

Usage Examples

HTTP Header

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


    Content-Type: application/x-dosexec    
  

HTML

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


    <a href="file.dat" type="application/x-dosexec">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-dosexec');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

What types of files use the application/x-dosexec MIME type?

This MIME type is specifically used for Windows and DOS executable binaries. The most common file extensions associated with it are .exe, .dll, and .com. It indicates to the client that the file contains machine code intended to be run by the operating system.

Why does my browser show a security warning when downloading this file type?

Browsers treat application/x-dosexec with high caution because executable files can install software, change system settings, or introduce malware. To protect users, modern browsers often prompt for confirmation or scan the file before allowing the download to complete.

How do I configure Apache to serve .exe files as application/x-dosexec?

You can map the file extension to the MIME type in your .htaccess file or main configuration. Add the line AddType application/x-dosexec .exe .dll .com to ensure the server sends the correct header. This helps browsers identify the file as an executable program rather than generic text or data.

What is the difference between application/x-dosexec and application/x-msdownload?

Both MIME types are used for Windows executables, and they are often interchangeable in practice. While application/x-dosexec explicitly refers to DOS/Windows execution, application/x-msdownload is frequently used for downloadable installers (MSI or EXE). Many servers default to the generic application/octet-stream to simply force a file download regardless of the specific subtype.

Can application/x-dosexec files run on Linux or macOS?

Generally, no; this MIME type denotes binaries compiled for DOS or Windows architectures. To run these files on Linux or macOS, you would typically need compatibility layers like Wine or virtualization software. Without such tools, the operating system will treat the file as unreadable binary data.

How should I handle this MIME type in Nginx?

In Nginx, you can define the relationship between the file extension and the MIME type inside your mime.types file or the types block of your configuration. specific syntax is: application/x-dosexec exe dll com;. This ensures Nginx serves these files with the specific header instead of a generic fallback.

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.