> ## Documentation Index
> Fetch the complete documentation index at: https://help.noxity.io/llms.txt
> Use this file to discover all available pages before exploring further.

# MIME Types

> Map file extensions to content types so browsers know how to handle files served by your site. Rarely needed; defaults cover almost every modern file type.

MIME Types tells the web server what `Content-Type` header to send for files of a given extension. Browsers use that header to decide whether to render, download, or ignore the file.

<Frame caption="cPanel home → Advanced → MIME Types">
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/noxity/images/cpanel/advanced/mime-types/page-light.png" alt="MIME Types form with content-type and extensions fields" className="block dark:hidden" />

  <img src="https://mintlify.s3.us-west-1.amazonaws.com/noxity/images/cpanel/advanced/mime-types/page-dark.png" alt="MIME Types form with content-type and extensions fields" className="hidden dark:block" />
</Frame>

## When you'd use it

The server already knows the right MIME type for `.html`, `.css`, `.js`, `.png`, `.jpg`, `.pdf`, and most modern formats. Reach for this tool only when you serve a file extension the server doesn't know.

Cases we still see:

* `.webmanifest`: a PWA manifest. Some Apache configs don't set the right type. Map to `application/manifest+json`.
* `.epub`: ebook download. Map to `application/epub+zip`.
* `.wasm`: WebAssembly binaries. Map to `application/wasm`.

If a browser is treating your file as plain text or downloading it instead of rendering, the MIME type is the usual culprit.

## Add a MIME type

<Steps>
  <Step title="Type the content type">
    Examples: `application/wasm`, `application/manifest+json`, `application/epub+zip`. The full list is in [the IANA registry](https://www.iana.org/assignments/media-types/media-types.xhtml).
  </Step>

  <Step title="Type the extensions">
    Space-separated, no dot. Example: `wasm`.
  </Step>

  <Step title="Click Add">
    cPanel writes an `AddType` line into `~/public_html/.htaccess`. Effective immediately on the next request.
  </Step>
</Steps>

## Common questions

<AccordionGroup>
  <Accordion title="My PWA manifest is being served as text/html">
    The server doesn't have `.webmanifest` mapped. Add a MIME type with **Type:** `application/manifest+json` and **Extension:** `webmanifest`. Browsers will then accept the manifest.
  </Accordion>

  <Accordion title="A custom file extension downloads instead of rendering inline">
    Either the MIME type is wrong, or the response includes `Content-Disposition: attachment`. Add the right MIME type here first; if downloads continue, check your application code (or `.htaccess`) for a `Content-Disposition` line.
  </Accordion>

  <Accordion title="Should I list common extensions like .css here?">
    No. The server defaults already cover them. Adding a duplicate entry is harmless but pointless. Only add types the server doesn't recognize by default.
  </Accordion>
</AccordionGroup>

## Need a hand?

<CardGroup cols={2}>
  <Card title="Open a ticket" icon="life-ring" href="https://members.noxity.io/submitticket.php">
    Best for anything that needs an account check or a config change on our end.
  </Card>

  <Card title="Live chat" icon="messages" href="https://noxity.io/contact">
    Faster for quick questions during business hours.
  </Card>
</CardGroup>
