当访问不存在的页面时,会直接出现can’t get xxx或返回默认404页面,所以我添加了腾讯的404公益页面,也算是尽了一份力吧!

开始折腾

在网站根目录下新建404.html文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>404 - Hello KAYGB</title>
<link rel="icon" href="你的icon链接">
</head>
<body>
<script type="text/javascript"
src="//qzonestyle.gtimg.cn/qzone/hybrid/app/404/search_children.js"
homePageUrl="自己的主页地址"
homePageName="回到我的主页"charset="utf-8">
</script>
</body>
</html>

使用hexo的童鞋,你会发现hexo把这个文件也进行了渲染,所以我们要让hexo不渲染这个html文件。找到博客根目录下的_config.yml,打开并修改:

1
2
3
4
5
6
7
8
9
10
# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: archives
category_dir: categories
code_dir: downloads/code
i18n_dir: :lang
skip_render: #如果也有别的页面不需要渲染,直接在下方添加就可以了
- 404.html #将404.html加进去,【-】之后要有空格隔开

然后:

1
hexo g -d

访问一下https://你的域名.github.io/404:

404notfound

将网站部署到云服务器上的还需要更改服in务器配置,(以ngnix为例)更改nginx监听的网站虚拟主机配置文件,nginx.conf,在server定义区域内增加:

1
error_page 404 = /404.html;

保存,重启nginx服务器,OJBK。


评论