测试通过!

nginx配置:

server 
{
   listen 80;
   server_name  test.domain.com;
   charset gb2312;
   index index.php index.html;
   root   /opt/nginx/html/test;
   error_page 404 =200 /404.html;
}

在/opt/nginx/html/test下建立404.html,内容为error page

测试:访问http://test.domain.com/none (本没有这个页面)

返回的页面内容为error page

将原本的404状态返回成了200

看到网上很多nginx实现404状态返回200隐藏URL

配置:

server
{
listen 80;
server_name test.domain.com;
charset gb2312;
index index.php index.html;
root   /opt/nginx/html/test;
error_page 404 =200 /.404.html;
}

在/opt/nginx/html/test下建立.404.html的隐藏文件即可

若要将404的页面返回403状态:

server
{
listen       80;
server_name  test.domain.com;
charset gb2312;
index index.php index.html;
root   /opt/nginx/html/test;
if (!-e request_filename) {
return  403;
     }
} 

转自:http://blog.sina.com.cn/s/blog_6c2e6f1f0100l92c.html