lnmp下配置nginx 404页面

服务器 2716 0 2012-03-28

lnmp下配置nginx 404页面
很多网上都说,但有得复杂而且很失败,在这里,教你轻松搞定!
在vhost里的配置文件里配置就OK了,比如你的配置文件为“域名.conf”,那就打开在server里加入以下一条:
error_page 404 /404.htm
一般说在这里加上这个就可以了(注意:不要在404后面加上=号,那是错误的,网上很多是这样的),但如还是不行,那就考虑下在ngnix.conf里加上:
fastcgi_intercept_errors on;
完了再检测下是否有错误再重启nginx
检测命令:/usr/local/nginx/sbin/nginx -t
如出现以下提示说明成功了:
....../nginx.conf syntax is ok 
.......nginx.conf test is successful
重启nginx命令:service nginx restart

上一篇:vsftpd for Ubuntu虚拟用户配置专版

下一篇:IIS下出现“目前访问网站的用户过多”解决方法

讨论数量:3

天涯网魂 3 杠 5 星2013-05-09 09:38:44

以上如果要加是“fastcgi_intercept_errors on;”这个,那添加的地方如下所以:

打开“nginx.conf”配置文件,把“fastcgi_intercept_errors on;”加到http{}里,如下示例:
http{
.....
fastcgi_intercept_errors on;
.....
}

再把“error_page 404 /404.htm”加到server{}里,如下示例:
server{
......
error_page 404 /404.htm;
......
}

天涯网魂 3 杠 5 星2013-05-09 09:31:09

这里还可以追加,比如我想设置404、403.405等,那就只写成:

error_page 404 403 505 /404.html

error_page 404 403 505 = /404.html

天涯网魂 3 杠 5 星2013-05-09 09:27:29

对上面进行补充:

经测试,“fastcgi_intercept_errors on;”不用加,且在404后面加等号“=”与不加是一样的效果,如:

error_page 404 /404.htm

error_page 404 = /404.htm

上面两个是一样的,选其一即可。

这里要说下路径问题:
上面的404.html这个页面是放在网站的根目录下,所以指向路径时就只加“/”,
注意:这里千万不要写成服务器上的实际绝对路径,比如:“/home/www/404.html”这样是错的,应该写成网站的绝对路径,如写成“/404.html”就可以了。

请先登录再发表讨论。 2024-04-29

天涯网魂
3 杠 5 星
TA 的文章
TA 的随言
TA 的资源链