Troubleshooting

Common responses and fixes

Most issues come down to one of three things: the hostname isn’t active, the origin path doesn’t resolve, or the cache is holding an old copy.

A CDN URL returns “not found”

The hostname serves only when the site is verified and the plan is active. Check:

  • The site is verified in the dashboard. Verification can lapse if the DNS record or verification file is removed, or the domain changes hands — re-run the check.
  • The workspace’s trial or subscription is active. When trial credit runs out, cached images keep serving through a grace period while new optimizations are refused; after it the hostname stops serving until you choose a plan.
  • The path is spelled exactly as it is at your origin (paths are case-sensitive).

The image is broken or errors on first load

The first request pulls the original from your origin. If that pull fails, the image can’t be served. Check:

  • The original loads directly from your origin at the same path over the public internet.
  • Your origin isn’t blocking the fetch (for example an allowlist or firewall that rejects server-side requests).
  • The URL points at a supported image format — JPEG, PNG, WebP, AVIF, or GIF. Non-image responses are not optimized, and SVG is deliberately not served through the CDN.

I updated the image but still see the old one

That’s the cache doing its job. If you replaced the image at the same path, purge it — the next request re-pulls the new version. Remember your browser may cache it too; hard-refresh to confirm.

My resize parameter seems to be ignored

  • w and h round up to your site’s configured width list — a value between two allowed widths is served at the next size up (and capped at the largest). Images are never enlarged past the original. See URL parameters.
  • dpr must be 1, 2, or 3; fit must be cover, contain, or inside. Anything else falls back to the default.
  • There is no quality URL parameter — quality is a per-site setting.

What the response status means

Errors from the image engine carry a machine-readable x-cdnmn-error header naming the exact reason. One exception: a hostname that isn’t active (unknown, still pending, or suspended) is refused directly at the edge with a bare 404 and no header — if the header is missing on a 404, check the hostname’s status in the dashboard first.

StatusMeaning
402New optimizations are paused (credit used up or over the plan limit). Cached images keep serving.
404The hostname isn’t active, or the origin has no image at that path.
415The origin response isn’t a supported image format (see above).
422The image is too large to process, or the transform failed.
502The origin couldn’t be reached or answered with an error.
504The origin took too long to respond.

Still stuck?

Email support@cdn.mn with the exact CDN URL, what you expected, and the x-cdnmn-error header value if there is one — that’s the fastest way for us to help.

Troubleshooting — CDN.MN