在Apache和Nginx中实现自定义错误页面-使用ErrorDocument和error_page

本文概述

从Apache HTTP或Nginx获得默认产品错误页面的情况看起来并不理想, 并且会显示版本信息, 从而导致信息泄漏漏洞。如果你尚未为网络应用实现自定义错误页面, 则出于多种原因, 你必须考虑这样做。

  • 品牌宣传–显示带有品牌徽标的定制消息, 以及几行消息, 以使访问者意识到问题所在并链接以联系各自的团队。
  • 漏洞–如果你正在使用PCI DSS合规性环境, 则必须考虑修复信息泄漏漏洞, 该漏洞位于默认产品错误页面。
  • 更好的用户界面–一切都与更好的用户体验有关, 你也可以在错误页面上提供。例如, 如果用户请求的内容不存在, 则网络服务器将提供404默认错误页面, 最有可能的用户将关闭会话。如何创建一个自定义页面, 用户可以在其中搜索或显示相关项目以及正确的导航?听起来不错?好吧, 我敢肯定, 通过这种方式, 你可以吸引访问者继续访问网站并提高跳出率。

还是不服气?让我们来看看…

这是Nginx默认的” 404 not found”页面

Nginx错误页面

收到此页面后, 你会怎么做?你很可能会关闭它。这是我实现的自定义” 404″页面

GeekFlare-ErrorPage

听起来不错?你很可能会转到”主页”或单击下面显示的任何帖子。这就是自定义页面的帮助方式。

现在你知道了优点, 是时候实施它们了。你可以在许多HTTP状态代码事件中拥有一个自定义页面。我认为关注至关重要。

  • 404 –找不到
  • 403 –禁止
  • 500内部服务器错误
  • 503服务不可用
  • 504网关超时

前提条件–假设你已经建立了自定义页面。

在Apache HTTP Server中实现自定义错误页面

例如, 可以通过多种方式执行此操作–你可以使用Rewrite或ErrorDocument指令执行此操作。我将解释如何使用ErrorDocument指令。

  • 登录到Apache HTTP服务器
  • 转到你拥有httpd.conf文件的apache conf文件夹
  • 备份httpd.conf文件
  • 修改httpd.conf并添加ErrorDocument, 如下所示
ErrorDocument 404 /path/of/custom/error/file
ErrorDocument 403 /path/of/custom/error/file
ErrorDocument 500 /path/of/custom/error/file
ErrorDocument 503 /path/of/custom/error/file
ErrorDocument 504 /path/of/custom/error/file

保存httpd.conf并重新启动Apache服务器

尝试访问不存在的内容, 你应该拥有自定义错误页面, 而不是默认页面。

注意:在这些HTTP状态返回代码的情况下, 你也可以重定向到其他URL。对于重定向, 你可以仅在每个代码旁边添加URL, 如下所示。

ErrorDocument 404 https://geekflare.com/errorpage
ErrorDocument 403 https://geekflare.com/errorpage
ErrorDocument 500 https://geekflare.com/errorpage
ErrorDocument 503 https://geekflare.com/errorpage
ErrorDocument 504 https://geekflare.com/errorpage

到目前为止, 一切都很好?

在Nginx服务器中实现自定义错误页面

  • 登录到Nginx服务器
  • 转到nginx.conf文件位置
  • 与往常一样, 备份conf文件并在http块下添加以下内容
error_page 404 /path/of/custom/error/file;
error_page 403 /path/of/custom/error/file;
error_page 500 /path/of/custom/error/file;
error_page 503 /path/of/custom/error/file;
error_page 504 /path/of/custom/error/file;

保存文件并重新启动Nginx即可反映出来。

当然, 建议你具有自定义错误页面, 因此请继续展示自定义错误页面。

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?