How can I replace Apache HTTP code 404 to 200

From: http://www.askapache.com/htaccess/apache-status-code-headers-errordocument.html

  1. Create a blank file in your main web directory named 404.. can be blank.
  2. Add this to your .htaccess file:

    Redirect 200 /404
    ErrorDocument 404 /404
    

That will change the Apache ErrorDocument to the /404 file. But the Redirect line causes requests for /404 to issue a 200 OK response instead of a 404.

If that doesn’t work it is due to rewrites no doubt. So if that’s the case add this under those first 2 lines but above any other rewrite lines in your .htaccess file:

Options FollowSymLinks ExecCGI

RewriteEngine On
RewriteBase /

# If the requested file doesnt exist
# and if the requested file is not an existing directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^[^4]* /404 [L,S=4000]

Explained in more detail at: http://www.askapache.com/htaccess/apache-status-code-headers-errordocument.html#Automate_ErrorDocument_Triggering

Leave a Comment