Nginx配置error_page 404错误页面

问题由来

昨天一网友在segmentfault.com上提问,无法做404重定向

打开对方的网站随便输入一个错误的地址发现给出了404代码,但是页面完全空白,并没有显示404页面的设定内容

当时就明白啥情况了,只要在nginx.conf配置文件上加上一句 fastcgi_intercept_errors on,就可以了

如果没这句的不管是error_page 还是nginx自带的404跳转都不能正常显示(访问不存在的php页面时可能会显示“No input file specified.”)

什么是404页面

如果碰巧网站出了问题,或者用户试图访问一个并不存在的页面时,此时服务器会返回代码为404的错误信息,此时对应页面就是404页面。404页面的默认内容和具体的服务器有关。如果后台用的是NGINX服务器,那么404页面的内容则为:404 Not Found

NGINX下如何自定义404页面

1、更改nginx.conf在http定义区域加入: proxy_intercept_errors或者fastcgi_intercept_errors

2、更改nginx.conf,在server 区域加入: error_page 404  /404.html  或者 error_page 404 =http://www.xxx.com/404.html

3、更改后重启nginx,,测试nginx.conf正确性

#502 等错误可以用同样的方法来配置。

error_page  500 502 503 504  /50x.html;

error_page 500 501 502 503 504 @errpage;

location @errpage {
	access_log logs/access.log maintry;
	proxy_pass url;
}

注意事项:

1、要添加:fastcgi_intercept_errors on  或者  proxy_intercept_errors

默认: fastcgi_intercept_errors off

添加位置:
http, server, location

默认情况下,nginx不支持自定义404错误页面,只有这个指令被设置为on,nginx才支持将404错误重定向

2.不要出于省事或者提高首页权重的目的将首页指定为404错误页面,也不要用其它方法跳转到首页

3.自定义的404页面必须大于512字节,否则可能会出现IE默认的404页面。例如,假设自定义了404.html,大小只有11个字节(内容为:404错误)

时间: 2024-12-19 14:21:35

Nginx配置error_page 404错误页面的相关文章

Tomcat中配置自定义404错误页面

404,50x这种错误经常遇到. 如果%CATALINA_HOME%\conf\web.xml和具体应用中都有设置%CATALINA_HOME%\webapps\ROOT\WEB-INF\web.xml 则应用中的生效. 如何设置一个友好的用户体验,以windows环境为例: 添加发生异常时,默认的文件,文件位置如下(如果没有设置reloadable为true或autoDeploy="true",则需要重启tomcat让更改的web.xml生效): (1)%CATALINA_HOME%

NGINX 配置404错误页面转向

什么是404页面 如果碰巧网站出了问题,或者用户试图访问一个并不存在的页面时,此时服务器会返回代码为404的错误信息,此时对应页面就是404页面.404页面的默认内容和具体的服务器有关.如果后台用的是NGINX服务器,那么404页面的内容则为:404 Not Found 为什么要自定义404页面 在访问时遇到上面这样的404错误页面,我想99%(未经调查,估计数据)的用户会把页面关掉,用户就这样悄悄的流失了.如果此时能有一个漂亮的页面能够引导用户去他想去的地方必然可以留住用户.因此,每一个网站都

nginx下配置404错误页面

1.创建自己的404.html页面,并放于网站根目录. 2.更改nginx.conf在http定义区域加入: fastcgi_intercept_errors on; 3.更改nginx.conf(或单独的网站配置文件) 在server 区域加入: error_page 404 /404.html 或者 error_page 404 http://www.xxx.com/404.html(不建议用这个绝对路径,有人反映会返回200,但是我测试是可以的,两边不要=) 4.测试nginx.conf正

nginx自定义404错误页面

在Nginx环境下配置自定义的404错误页面转向,避免给用户展示生硬.不友好的错误信息.可以给出如下提示:很抱歉,您访问的页面不存在或已被删除. 注意事项: 一.修改nginx.conf之前做好备份,避免出现问题. 二.定义页面时注意路径是否正确. ①首先创建一个404错误时显示的页面,如放在你的网站根目录下的404.html.(内容随便) ②在nginx.conf中的http区域加入fastcgi_intercept_errors on: http { ... fastcgi_intercep

java web 404错误页面配置

java web 404错误页面配置:注意红框的地方,在工程的web.xml文件里的最开头加入如下的内容便可,但是也有问题,针对以.action后缀名和.jsp后缀名不起作用, 因为后面配置了一些拦截器专门拦截.action和.jsp文件

LNMP设置404错误页面

LNMP即Linux+Nginx+MySQL+PHP的web架构.     1.在网站的根目录touch 文件404.html,内容如下: <html> <body><H1>404 NOT FOUND!</H1></body> </html> 2.chmod 755  404.html chown www:www   404.html 3.修改nginx配置文件nginx.conf: 在http {}区域添加上:fastcgi_int

Nginx学习笔记05错误页面重定向

Nginx至少存在两种不同的配置来指定错误页面: 使用try_files配置项. 使用error_page配置项. 先介绍使用try_files配置项的情况. Nginx提供的try_files配置允许在一个location中指定多个潜在的可能的响应页面,Nginx将按照定义的次序依次尝试访问这些响应页面,直到成功访问该页面.根据这个机制,可以在try_files配置的页面列表的最后面加上一个页面作为默认的错误页面. 配置内容: location /abc { root  html; try_f

在ASP.NET MVC3项目中,自定义404错误页面

在Web开发中,用户体验是至关重要的,一个友好的网站自然少不了自定义404错误页面. 让笔者为大家介绍404错误页面在ASP.NET MVC3项目中的配置: 第一步,在项目的Web.config文件中找到节点<system.web> 在此节点下添加配置        <customErrors mode="On" defaultRedirect="~/Index/Error404">          <error statusCode

【转贴】Linux系统NGINX负载均衡404错误处理方法

NGINX负载均衡404错误处理方法 使用NGINX 实现负载均衡,但一组服务器的数据不是实施同步,主服务器有了数据要过段时间才同步到其他服务器 upstream   image.stream.com   { server 192.168.1.25:8088; server 192.168.1.24:8088; server 192.168.1.23:8088; } 用户访问图片的时候,就有60% 的几率显示为找不到文件. 问题: 怎么配置成以下功能: 1.连接图片服务器时,如果说浏览的机器在2