How to redirect 404 to homepage in Nginx?
When a requested URL is not available or not found it’s advisable to redirect them to another URL or to a homepage that’s user-friendly. Nginx web server allows us to redirect off such 404 error pages to a custom URL, all we need to do is instruct Nginx’s site configuration to redirect such pages, and here is how to do that.
Redirect all the 404 to homepage.
To redirect all 404’s (or every page, whether invalid or not) to the homepage just open site’s config file and add the below directive in the server block. The default location of the config file is
error_page 404 /;
error_page 404 /index.html;
Above directive instructs if
404 then redirect it to
If the homepage URL of the site ends with
index.html or any similar way just modify the root with that exact parameter to avoid any error.
But in the above way web server will show a clear 404 error, which is not good in the eye of search engines, better change the 404 status with 200.
All you need to instruct the directive to set the error status to 200.
error_page 404 =200 /;
Now we’re all done here, save the config and test the config if you want to.
Restart/reload the Nginx web server to apply those changes.
systemctl restart nginx
Now Nginx server will automatically redirect 404 URLs to their new location.