How to create custom 404 error page for all users in apache

apache-2.2

I need to create 404 error pages but it should be usable for all of users, If I use ErrorDocument 404 /404.php it will display "Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request." on users web site, How to create it without placing 404.php in every users documentroot?

Best Answer

You could configure your apache with rewrite rule as above:

ErrorDocument 404 http://www.domain.com/customerrors/page-404.html
# or maybe .php if you want some smarts in that page?

but also put a system-wide alias in place for the /customerrors/ path

Alias /customerrors /var/www/html/custom-errors/
<Directory /var/www/html/custom-errors/>
  # make sure the location can be used to serve files
  Order allow,deny
  Allow from all
</Directory> 

You'll just have to be a little careful to not override a website-local URL.