When you upload a file to your website whether it’s an image, document, font, or video your web server needs to tell the browser how to handle that file. Should it display the file in the browser, download it, or run it through an application? That decision depends on something called the MIME type.
Most common file types like .html
, .jpg
, and .pdf
are handled automatically. But when you’re working with uncommon or custom file types like .webp
, .apk
, .woff2
, or .json
you may run into issues where the browser doesn’t display or download the file correctly. This is where MIME mapping in cPanel becomes essential.
In this guide from EglueWeb, we explain how MIME types work and how you can fix file handling issues using cPanel’s MIME Type settings.
What Are MIME Types?
MIME (Multipurpose Internet Mail Extensions) types describe the nature and format of a file sent from the server to a web browser. For example:
.html
→text/html
.jpg
→image/jpeg
.mp4
→video/mp4
.json
→application/json
When a browser receives a file, it uses the MIME type to decide whether to display it, download it, or run it through an associated plugin or application.
Common MIME Type Issues
Without proper MIME type mapping:
.json
files might download instead of displaying in the browser.- Fonts (
.woff2
,.ttf
) might not load due to missing headers. - Web apps and APIs may fail with incorrect
Content-Type
headers. - Custom extensions may result in 406 Not Acceptable or 415 Unsupported Media Type errors.
How to Add MIME Types in cPanel
You can add or edit MIME types easily from the cPanel interface:
Step-by-Step:
- Log in to cPanel
- Scroll to the Advanced section and click MIME Types
- You’ll see a form to create a new MIME type:
- MIME Type: The actual media type (e.g.,
application/json
) - Extensions: The file extensions you want to associate (e.g.,
.json
)
- MIME Type: The actual media type (e.g.,
- Click Add
This tells the server: “Whenever you serve a file with this extension, use this MIME type.”
Example MIME Mappings to Add
Extension | MIME Type | Use Case |
---|---|---|
.json |
application/json |
API responses, config files |
.webp |
image/webp |
Next-gen image format |
.woff2 |
font/woff2 |
Web fonts |
.apk |
application/vnd.android.package-archive |
Android app downloads |
.svg |
image/svg+xml |
Scalable Vector Graphics |
.csv |
text/csv |
Spreadsheet exports |
How to Confirm MIME Type is Working
After adding the MIME type, test it:
- Visit the file URL in your browser. It should now open or behave as expected.
- Use browser dev tools (Network tab) to inspect the Content-Type header.
- Or use
curl
from the terminal:curl -I https://example.com/file.json
Expected output:
Content-Type: application/json
Alternative: Use .htaccess
for MIME Mapping (Advanced)
If you prefer, you can manually add MIME types to your .htaccess
file in the root of your site:
AddType application/json .json
AddType font/woff2 .woff2
AddType image/webp .webp
This is useful for granular control or when server-wide MIME changes aren’t allowed.
When to Use MIME Mapping
Use cPanel’s MIME Types when:
- A file downloads instead of opening in the browser.
- Fonts or scripts don’t load in modern web apps.
- You’re hosting custom file types or extensions.
- You get CORS or MIME-related errors in the browser console.
Conclusion
Proper MIME type configuration is essential for delivering the right experience to your visitors. With cPanel’s built-in MIME Types tool, hosting providers and site owners can resolve common display or download issues quickly without needing deep server knowledge.
At EglueWeb, we often see cases where something as simple as a missing MIME type causes major compatibility issues. By proactively configuring MIME mappings, you improve website performance, user experience, and application compatibility all from within your cPanel interface.