Setting 404 page in Nginx

I am using this page (http://wiki.nginx.org/WordPress) to setup my WordPress on a nginx/php-fpm server.

Everything is okay, except the 404 page

  1. When I request www.example.com/foo, it send me the default nginx 404 not found page
  2. I have already set the following, but no luck..

Config:

fastcgi_intercept_errors on;
error_page   404  /index.php?error=404;

I have tried to add some code (e.g. die(“wordpress”);) in a plugin when I request this page, and clearly that the request is handled by wordpress already, but it just can’t use the 404.php in the default template.

Anyone can help?

1
1

Remove the 'fastcgi_intercept_errors' argument from you configuration. It’s unnecessary since 'error_page' declares 404 errors, which should be handled by index.php, which will trigger PHP-FPM to handle it, and WordPress to present your theme’s 404 page.

It seems counter-intuitive, but 'fastcgi_intercept_errors' is actually causing PHP not to handle the error page.

Leave a Comment