nginx设置404页面跳转
程序员文章站
2022-06-03 14:59:55
...
nginx设置404页面跳转
如果网页的链接地址改变了,在通过这个地址访问的时候会返回一个错误码404.表示没有找到该地址内容.这个在建站初期是很容易发生的事.我的文章开始是通过中文名作为URL的,后来改为数字作为URL.这时网上已经有很多文章中存储了以前的已经失效的地址.这样导致搜索引擎抓取网页时会有大量的失效链接.死连数量多会导致搜索引擎降权, 我的网站dashidan.com就没有被bing收录. 很惨痛的教训.针对404有2种补救措施。发生404错误时指向404.html页面或者做网页重定向.
1 nginx设置404错误指向页面
更改nginx.conf中在server区域加入error_page页面:
error_page 404 /404.html
2 制作一个404.html页面
可以做一个静态html页面来作为道歉页面,404页面最好有主页的链接,方便用户找到主页.参考页面http://dashidan.com/404.html.
3 重启nginx使配置生效
重启完成后,可以输入一个不存在的页面来查看效果.
4 避免出现404错误
网页避免出现404错误的最佳方案是在设计网站之初对整体的URL做好完整的规划. 否则只能在出现问题后补救了. 以大屎蛋教程网的url规划为例:
- 文章均放在article目录
- 文章根据语言分类 article/java, article/mongodb...
- 图片放在img目录
- 下载资源放在download目录
- css文件放在css目录
- js脚本文件放在js目录
有了合理的规划就能最大程度避免出现404错误.
5 roboot.txt屏蔽404页面
在roboot.txt文件中加入死链url,来避免搜索引擎访问并收录已失效的网页.也是针对404错误的一种补救措施.这种方式也是在外部链接地址无法修改的情况的解决方案.通过这种方式告诉搜索引擎这些页面不存在了,从索引中移除, 减少搜索引擎中的死链.对网站评级有一定的帮助.
通过robot设置屏蔽指定网页的示例:
User-agent: *
Disallow: /article/java/basic/屏蔽.html
Disallow: /article/java/basic/大屎蛋教程网
Disallow: /article/java/basic/dashidan.com
6 nginx对404页面进行301重定向
return 301 https://$server_name$request_uri;
转载请保留本文链接.
上一篇: 配置tomcat的错误404页面
下一篇: vue-router配置404页面