Should we make our own 404 pages for our beautiful bespoke sites?

A better way if you are publishing with page relative url’s, would be to redirect to the 404 page, instead of having it served from the incorrect url.

So instead of having this in your htaccess file :

ErrorDocument 404 /404.html

Put this at the end of your htaccess file :

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /404.html [L,R=301]

What does this do ?

The first line turns RewriteEngine on.
The second line sets a condition for the third line, ensuring that it’s a non-existant file and passing the requested filename (using a server variable (%{})).
The third line matches everything, replaces it with the path to your 404.html in the root, and sets two flags, the first (L) to stop any more rewrite rules from being applied, and the second (R=301) to force an external redirect using the error code 301.

Note: You need to make sure apache has ‘mod rewrite’ on and most web hosts do have this on by default otherwise you can ask your hosting provider if it’s not working.