NGINX 配置404错误页面转向

NGINX 配置404错误页面转向

什么是404页面

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

为什么要自定义404页面

在访问时遇到上面这样的404错误页面,我想99%(未经调查,估计数据)的用户会把页面关掉,用户就这样悄悄的流失了。如果此时能有一个漂亮的页面能够引导用户去他想去的地方必然可以留住用户。因此,每一个网站都应该自定义自己的404页面。

NGINX下如何自定义404页面

IIS和APACHE下自定义404页面的经验介绍文章已经非常多了,NGINX的目前还比较少,为了解决自家的问题特地对此作了深入的研究。研究结果表明,NGINX下配置自定义的404页面是可行的,而且很简单,只需如下几步:

1.创建自己的404.html页面

2.更改nginx.conf在http定义区域加入:
fastcgi_intercept_errors on;

3.更改nginx.conf(或单独网站配置文件,例如在nginx ->
sites-enabled下的站点配置文件 )

中在server 区域加入:
error_page 404  /404.html  或者
error_page 404 =
http://www.xxx.com/404.html

4.更改后重启nginx,,测试nginx.conf正确性: /opt/nginx/sbin/nginx –t

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

error_page  500 502 503 504  /50x.html;


注意事项:

1.必须要添加:fastcgi_intercept_errors on; 如果这个选项没有设置,即使创建了404.html和配置了error_page也没有效果。fastcgi_intercept_errors 语法: fastcgi_intercept_errors on|off 默认: fastcgi_intercept_errors off 添加位置: http, server, location 默认情况下,nginx不支持自定义404错误页面,只有这个指令被设置为on,nginx才支持将404错误重定向。这里需要注意的是,并不是说设置了fastcgi_intercept_errors on,nginx就会将404错误重定向。在nginx中404错误重定向生效的前提是设置了fastcgi_intercept_errors on,并且正确的设置了error_page这个选项(包括语法和对应的404页面)

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/114111.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • War3Share开源

    War3Share开源由于个人精力和网络带宽等问题,我无法继续进行魔兽争霸3录像工具软件War3Share的开发与维护。为了让它得到更好的发展,现已转交给超级玩家进行管理。经过协商,我们决定将它以LGPL协议进行开源。Wa

  • 关于力矩单位的理解

    关于力矩单位的理解电机转矩,简单的说,就是指转动的力量的大小。但电动机的转矩与旋转磁场的强弱和转子笼条中的电流成正比,和电源电压的平方成正比所以转矩是由电流和电压的因素所决定的。转矩是一种力矩,力矩在物理中的定义是:力矩=力×力臂电机的“扭矩”,单位是N·m(牛米)。电磁转矩的计算公式没有涉及力臂的概念,单位为什么也是N.m?电磁转矩是机电能量转换的桥梁。从电角度看T=CT*Φ*Ia;从机

  • phpmyadmin端口多少(iis配置改端口号)

    当前使用phpmyadmin版本号为phpMyAdmin-4.7.5mysql默认端口3306,如果你当前mysql不是3306,则如何通过phpmyadmin连接呢?网上文章都是要修改phpmyadmin目录下libraries下配置文件config.default.php文件的$cfg[‘Servers’][$i][‘port’]=”参数,…

  • pychram激活码 3月最新注册码「建议收藏」

    pychram激活码 3月最新注册码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • 一分钟学习静态网页制作[通俗易懂]

    一分钟学习静态网页制作[通俗易懂]第一章静态网页制作:什么叫做HTML:超文本标记语言HTML优势:世界知名浏览器都支持Google,苹果,微软,等等……还有市场需求跨平台:1.win系统2.苹果系统3.linux系统w3c标准包涵:1.结构化标准(XHEML,XML)2.表现化标准(CSS)3.行为化标准(DOM,ECMAScript)网页的基本标签:1.标题标签:h1~h…

  • leetcode单调队列_单调栈leetcode

    leetcode单调队列_单调栈leetcode0x00单调栈主要回答这样的几种问题比当前元素更大的下一个元素比当前元素更大的前一个元素比当前元素更小的下一个元素比当前元素更小的前一个元素0x01问题一维护一个单调递减的栈。Leetcode496:下一个更大元素I(超详细的解法!!!)Leetcode503:下一个更大元素II(超详细的解法!!!)Leetcode739:每日温度(超详细的解法!!!)cl…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号