一个网站,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有以下集中配置方式,一起来看看。
之一种:Nginx自己的错误页面
Nginx访问一个静态的html 页面,当这个页面没有的时候,Nginx抛出404,那么如何返回给客户端404呢?
看下面的配置,这种情况下不需要修改任何参数,就能实现这个功能。

server {
listen 80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
}
# 定义错误页面码,如果出现相应的错误页面码,转发到那里。
error_page 404 403 500 502 503 504 /404.html;
# 承接上面的location。
location = /404.html {
# 放错误页面的目录路径。
root /usr/share/nginx/html;
}
}
第二种:反向 *** 的错误页面
如果后台Tomcat处理报错抛出404,想把这个状态叫Nginx反馈给客户端或者重定向到某个连接,配置如下:
upstream www {
server 192.168.1.201:7777 weight=20 max_fAIls=2 fail_timeout=30s;
ip_hash;
}
server {
listen 80;
server_name www.test.com;
root /var/www/test;
index index.html index.htm;
location / {
if ($request_uri ~* \\\’^/$\\\’) {
rewrite .* http://www.test.com/index.html redirect;
}
# 关键参数:这个变量开启后,我们才能自定义错误页面,当后端返回404,nginx拦截错误定义错误页面
proxy_intercept_errors on;
proxy_pass http://www;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-FOR $proxy_add_x_forwarded_for;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
}
第三种:Nginx解析php代码的错误页面
如果后端是php解析的,需要加一个变量
在http段中加一个变量 fastcgi_intercept_errors on 就可以了。
指定一个错误页面:
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
指定一个url地址:
error_page 404 /404.html;
error_page 404 = http://www.test.com/error.html;
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码官网:www.west.cn
扫描二维码推送至手机访问。
版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。
前言:本文是原创首发。做站有几年了 (1)初识网络: 高中毕业时候,造化弄人,读了个计算机会计专业(听说好考,找工作容易,呵呵),结果不感兴趣,两年毕业后,全科考试通过,但会计证我都没拿就走了,觉得没意思,会计应该是女人干的活。大专期间,空闲时间很多,那时候有空就去机房(费用从餐...
俺自来安徽省一个偏僻的乡村,小时候家里很穷,13岁的时候我的母亲去逝了,父亲一个人拉扯我和大我2岁的哥哥。我的童年生活在我的印像中已经很模糊了!为了能给父亲减轻生活压力能早日给哥哥娶上媳妇,高中没读完便缀学了,在家里帮父亲做活。那一段时间我什么都做过,农忙在家干活,农闲就出去打工。...
前言 &nb...
站长网(www.admin5.com) 与百度知道互联网(zhidao.baidu.com) 紧密合作,一起解决更多互联网方面的问题。给更多的站长和网络人解决问题。服务于互联网作努力本站站长 图王 也荣誉为百度知道知识专家团的一员。为更多的朋友解决网络问题 希望大家继续支持 站长网 支持 百...
仅以此文献给在PR上挣扎的站长们 google拥有世界上领先的搜索引擎技术,他们有最大的资金后盾,有最强的技术团队,有着别的公司无法比拟的公司文化底蕴。google全球最大的搜索引擎,搜索引擎界的大哥大。  ...
我出生在一个贫困的家庭中。玩电脑开始是在2000年,那个时候正在上学,基本上是在玩玩红警,星际争BA。其实四年学习生涯中都一直在玩电脑。(有点多余,文采不好,为了求落伍,各位支持下!) 2002年的时候,班里要搞网...