xampp 自定义 404 页面

打开Apache的配置文件,找到“#ErrorDocument 404 /missing.html”,去了#号,在网站根目录下建立一个missing.html页面,然后重启Apache,本来期待成功后显摆一下,没想到意外的情况发生了,居然没有生效,以前这么配置明明就可以了,为什么现在不行,改的配置文件不对?还是其他什么问题?经过一系列的测试,终于定位到了问题所在,原来在配置404的指令“#ErrorDocument 404 /missing.html”下面有这样一段指令“Include conf/extra/httpd-multilang-errordoc.conf”,该指令引入httpd-multilang-errordoc.conf这个配置文件,看名称好像是关于错误信息的文档,是不是跟配置404不生效有关系?打开一看,除了404之外,还定义400,403,500等错误信息,八成就是因为这个配置文件的指令覆盖了404配置所致,于是打开它定义的404文档,果不其然,既然找到了原因,解决办法就简单很多了。

    方法一

    使用#号注释了Include conf/extra/httpd-multilang-errordoc.conf,使之无法生效,当然其他的错误信息的配置也无法生效了。

    方法二:

    把ErrorDocument 404 /missing.html指令书写在Include conf/extra/httpd-multilang-errordoc.conf之后,这样后书写的指令会覆盖前面的配置。

    方法三:

    使用.htaccess配置文件,在里面书写ErrorDocument 404 /missing.html。需要开启mod_rewrite组件。

    虽然三种方法都能够解决问题,但是前两个方法均在Apache的配置文件中操作,影响了基于Apache提供服务的所有站点,第三种方法仅影响添加该配置文件的站点,至于选择哪种方法,可以根据自身情况进行选择。

posted @ 2022-08-03 22:27  漫步CODE人生  阅读(92)  评论(0编辑  收藏  举报