Skip to main content
Error Pages is an editor for the HTML Apache serves when a request fails with an HTTP error code. The default pages are blank and ugly; this tool lets you replace them with branded ones.
Error Pages editor with HTTP code list and HTML textarea

How to use it

1

Pick a domain

Top of the page. The error pages you edit apply only to the selected domain (and any subdomain or addon under it, unless that subdomain has its own override).
2

Pick the error code to customize

cPanel pre-lists the common ones: 400 Bad Request, 401 Authorization Required, 403 Forbidden, 404 Not Found, 500 Internal Server Error. Click the code to open its editor.
3

Write the HTML

The editor is a plain textarea. Paste your HTML. The page is served verbatim, so include <html>, <head>, <body>, your CSS link, etc.Use the Insert buttons at the top to drop in dynamic placeholders:
PlaceholderResolves to
Referring URLThe page the visitor came from.
Visitor’s IP AddressThe client IP.
Requested URLThe URL that triggered the error.
Server NameYour domain.
Visitor’s BrowserThe User-Agent string.
Redirect Status CodeThe HTTP code (e.g., 404).
4

Save

The editor writes the HTML to ~/public_html/<code>.shtml and adds an ErrorDocument line to the domain’s .htaccess. Live immediately.

Which errors are worth customizing

CodeWorth it?Why
404 Not FoundAlwaysVisitors hit broken links often. A useful 404 with search and navigation keeps them on the site.
500 Internal Server ErrorYesDon’t leak the default Apache page; replace with a branded “we’re looking into it” page.
403 ForbiddenSometimesIf you have password-protected directories, customize to explain rather than show the default.
401 Authorization RequiredRarelyThis shows after a failed HTTP Basic Auth attempt; users rarely see it on regular sites.
400 Bad RequestAlmost neverTriggered by malformed HTTP requests, mostly by bots. Default is fine.

Common questions

Ranking-wise, this is a problem: search engines see the page as “found” rather than “missing”, so they keep crawling dead URLs. The cPanel-generated ErrorDocument directive should already preserve the 404 status, but if you’ve used JavaScript to redirect or PHP without setting a header, you’ll lose it. In PHP at the top of the error page:
<?php http_response_code(404); ?>
Confirm the status code with browser dev tools (Network tab) or curl -I.
The Error Pages tool sets the page per the cPanel “primary” name for that domain. If www and the bare domain are routed separately (or one is an addon), you’ll need to set the error pages for both. Easier alternative: drop a single .htaccess line at the root public_html:
ErrorDocument 404 /404.html
That applies to every host pointing at public_html.
WordPress handles its own routing, so 404s for URLs that match WP’s routing rules return WordPress’s 404.php template instead. That’s fine: customize 404.php in your theme. The cPanel error page is the fallback for URLs WordPress never sees, like requests for files outside WP entirely.
Bad idea for SEO; search engines treat redirects-instead-of-404s as soft-404s. Keep the 404 status. If you want a friendly experience, build a 404 page that includes site search and links to popular content.

Need a hand?