hexo干货系列:(六)hexo提交搜索引擎(百度+谷歌)
前言
能看到这里,说明大家都跟我一样,已经把博客搭起来并洋洋洒洒写了几篇博文,正春风得意感觉良好的时候,搭建博客有屎以来最大的危机出现在没有准备的我面前,百度+谷歌都无法搜索到我的博客。装逼还没几天就这样,真是不能忍。 于是就研究了几天,鼓捣出了这篇文章。教大家如何脱坑。
正文
下面准备分别介绍谷歌和百度如何提交搜索引擎,其中有一些共同的地方,这里先说明
先确认博客是否被收录
在百度或者谷歌上面输入下面格式来判断,如果能搜索到就说明被收录,否则就没有,用你的域名替代我的tengj.top
site:tengj.top
我目前搜索结果如图:
验证网站
两个搜索引擎入口:
为什么要验证网站
站长平台推荐站长添加主站(您网站的链接也许会使用www 和非 www 两种网址,建议添加用户能够真实访问到的网址),添加并验证后,可证明您是该域名的拥有者,可以快捷批量添加子站点,查看所有子站数据,无需再一一验证您的子站点。
如何验证网站
首先如果您的网站已使用了百度统计,您可以使用统计账号登录平台,或者绑定站长平台与百度统计账号,站长平台支持您批量导入百度统计中的站点,您不需要再对网站进行验证。
百度站长平台为未使用百度统计的站点提供三种验证方式:文件验证、html标签验证、CNAME验证。
1.文件验证:您需要下载验证文件,将文件上传至您的服务器,放置于域名根目录下。
2.html标签验证:将html标签添加至网站首页html代码的标签与标签之间。
3.CNAME验证:您需要登录域名提供商或托管服务提供商的网站,添加新的DNS记录。
验证完成后,我们将会认为您是网站的拥有者。为使您的网站一直保持验证通过的状态,请保留验证的文件、html标签或CNAME记录,我们会去定期检查验证记录。
不管谷歌还是百度都要先添加域名,然后验证网站,这里统一都使用文件验证,就是下载对应的html文件,放到域名根目录下,也就收博客根目录下的source下面
然后部署到服务器,输入地址:http://tengj.top/googlead0e22632f59a368.html 能访问到就可以点验证按钮。
站点地图是一种文件,您可以通过该文件列出您网站上的网页,从而将您网站内容的组织架构告知Google和其他搜索引擎。Googlebot等搜索引擎网页抓取工具会读取此文件,以便更加智能地抓取您的网站。
我们要先安装一下,打开你的hexo博客根目录,分别用下面两个命令来安装针对谷歌和百度的插件
npm install hexo-generator-sitemap --save
npm install hexo-generator-baidu-sitemap --save
在博客目录的_config.yml中添加如下代码(我不加也可以)
# 自动生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml
编译你的博客
hexo g
如果你在你的博客根目录的public
下面发现生成了sitemap.xml
以及baidusitemap.xml
就表示成功了。
这时候sitemap.xml
跟baidusitemap.xml
里面的内容一样,但是文章链接都是tengj.github.io的,这里我就很奇怪了,我博客同时对应github和coding的,为啥生成的sitemap.xml
对应的域名都指向了github,sitemap.xml
我是要提交谷歌的,对应github的域名没问题,但是baidusitemap.xml
里面域名还对应github问题就大了,因为github禁止了百度爬虫,提交了百度也是不会访问的。所以我把baidusitemap.xml
里面的改成了我的个人域名tengj.top,因为国内用户访问tengj.top其实是访问coding上面。
部署后你分别访问
http://tengj.top/sitemap.xml
http://tengj.top/baidusitemap.xml
效果如下图:
让谷歌收录我们的博客
谷歌操作比较简单,就是向Google站长工具提交sitemap
登录Google账号,添加了站点验证通过后,选择站点,之后在抓取
——站点地图
中就能看到添加/测试站点地图
,如下图:
谷歌我提交过了一天就能搜索到我的博客了,效率很高。
让百度收录我们的博客
谷歌很好搞定,百度就感觉很难,我从提交百度到现在写这篇博客,在百度那边也只能搜索到一条我的博客,真不容易。
正常情况,是要等百度爬虫来爬到你的网站,才会被收录。
但是github屏蔽了百度爬虫目前,所以我们要主动出击,我们自己把网站提交给百度。
这就要使用到百度站长平台
验证网站
验证网站最上面提过了,这里直接截图
网页抓取
上面步骤成功后,进入站点管理,找到网页抓取这边详情点进去
我们主动提交博客文章链接
如何选择链接提交方式
1、主动推送:最为快速的提交方式,推荐您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。
2、自动推送:最为便捷的提交方式,请将自动推送的JS代码部署在站点的每一个页面源代码中,部署代码的页面在每次被浏览时,链接会被自动推送给百度。可以与主动推送配合使用。
3、sitemap:您可以定期将网站链接放到sitemap中,然后将sitemap提交给百度。百度会周期性的抓取检查您提交的sitemap,对其中的链接进行处理,但收录速度慢于主动推送。
4、手动提交:一次性提交链接给百度,可以使用此种方式。
一般主动提交比手动提交效果好,这里介绍主动提交的三种方法
从效率上来说:
主动推送>自动推送>sitemap
主动推送
主动推送是百度搜索为站长们快速提交数据针对性开发的最快捷工具,但是也最难,没有代码功底的小伙伴估计就不会了。
没事,博主既然写了这篇博客就表示博主找到方法了,我自己用java写了个post的推送示例,部署到了coding,我也不知道能部署多久,好像部署在coding的演示那边每天都会扣除码币。
地址:戳我
说明:
选择数据类型,默认推送数据,也有更新数据,删除数据。后面2个一般用不到
填写站点,也就是你的域名,我的是tengj.top
填写token,token在主动推送例子那边有一串。实在找不到就按下CTRL+F
查找token
填写文章地址,填写你要提交的文章链接,每行一条记录
成功提示:
地址错误提示:
自动推送
自动推送很简单,就是在你代码里面嵌入自动推送JS代码,在页面被访问时,页面URL将立即被推送给百度
代码如下:
<script>
(function(){
var bp = document.createElement('script');
bp.src = '//push.zhanzhang.baidu.com/push.js';
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
我是放在\themes\jacman\layout\_partial\after_footer.ejs
中,添加到下面就行。
sitemap提交
sitemap
提交最上面提过了,直接提交http://tengj.top/baidusitemap.xml 就行,大家看下图就知道,一开始我是提交 sitemap.xml
,里面是指向github
的,结果主域校验失败了,后来切换到指向tengj.top
域名的baidusitemap.xml
就提交成功。
最后大家看下我最近提交的情况
为什么自动推送可以更快的将页面推送给百度搜索?基于自动推送的实现原理问题,当新页面每次被浏览时,页面URL会自动推送给百度,无需站长汇总URL再进行主动推送操作。
借助用户的浏览行为来触发推送动作,省去了站长人工操作的时间。
自动推送和链接提交有什么区别?已经在使用链接提交的网站还需要再部署自动推送代码吗?
二者之间互不冲突,互为补充。已经使用主动推送的站点,依然可以部署自动推送的JS代码,二者一起使用。
什么样的网站更适合使用自动推送?自动推送由于实现便捷和后续维护成本低的特点,适合技术能力相对薄弱,无能力支持全天候实时主动推送程序的站长。
站长仅需一次部署自动推送JS代码的操作,就可以实现新页面被浏览即推送的效果,低成本实现链接自动提交。
同时,我们也支持主动推送和自动推送代码配合使用,二者互不影响。
参考
总结
写了3个小时终于写差不多了,很早就想写这篇的,结果百度不给力,一直不给收录所以拖到今天,昨天花了点时间写了下主动推送的接口方便大家,地址上面有。
3月8号 分别用sitemap
和baidusitemap
提交到谷歌和百度
3月9号 谷歌的收录了,可以搜索到我的博客
3月10号 百度收录了
更多教程可以来我嘟嘟独立博客里面看到
欢迎来访:嘟嘟独立博客
最近撸了个java的公众号,学习资源超级多,视频,电子书,最新开发工具一个都不能少,已全部分享到百度云盘,求资源共享,打造一个学习方便,工作方便的java公众号,开源开源,有需求的可以关注~撒花
hexo干货系列:(六)hexo提交搜索引擎(百度+谷歌)的更多相关文章
- hexo干货系列:(总纲)搭建独立博客初衷
前言 我是一名程序员,以前知识整理都是整理在为知笔记上,博客用的比较少,更别说是使用独立博客,因为不会... 2016年过年在家期间偶然的机会萌发了自己要搭建一个属于自己的独立博客的想法,于是就有了下 ...
- hexo干货系列:(四)将hexo博客同时托管到github和coding
前言 之前我们把hexo托管在github,但是毕竟github是国外的,访问速度上还是有点慢,所以想也部署一套在国内的托管平台,之前查资料听说gitcafe,但是听说gitcafe已经被coding ...
- hexo干货系列:(一)hexo+gitHub搭建个人独立博客
前言 一直想要一个自己的独立博客,但是觉得申请域名+服务器的太麻烦了就一直没有实现.偶然机会发现Hexo这个优秀的静态博客框架,再搭配现在流行的gitHub,简直是完美写博客的黄金搭档(免费+方便). ...
- hexo干货系列:(二)hexo主题下载及配置
前言 上一篇文章介绍了hexo+gitHub简易搭建属于自己的个人独立博客,但是主题是默认的landscape,略显简单,今天的教程推荐Jacman主题. Jacman是一款为Hexo打造的一款扁平化 ...
- hexo干货系列:(五)hexo添加站内搜索
前言 本来想用百度站内搜索,但是没成功,所以改用swiftype,用起来还是很棒的,这里分享一下我的安装步骤 正文 注册 去swiftype官网注册个账号,然后登陆,对了不要去在意30天试用,30天过 ...
- hexo干货系列:(七)hexo安装统计插件
前言 前面介绍了如何让百度和谷歌收录我们的博客,那如何查看自己的博客每天被多少人访问呢~ 这里我介绍下hexo中如何使用统计插件,每天看到自己的博客访问量越来越高也是一种享受. 正文 开启统计功能 我 ...
- hexo干货系列:(三)hexo的Jacman主题优化
前言 上一篇介绍了Jacman主题的安装和配置,今天根据上次的基础做了些优化,让博客看起来很舒服. 正文 首页文章展示摘要 该主题首页文章列表默认是全部展开,感觉不好,我关闭掉了,只展示少量摘要. 修 ...
- hexo干货系列:(八)hexo文章自动隐藏侧边栏
前言 使用Jacman主题的时候发现打开具体文章后,侧边栏还是会展示,我想要的效果是自动隐藏侧边栏,并且展示目录.但是当我修改了主题配置文件里面close_aside属性为true的时候,发现侧边栏隐 ...
- Spring Boot干货系列:(六)静态资源和拦截器处理
Spring Boot干货系列:(六)静态资源和拦截器处理 原创 2017-04-05 嘟嘟MD 嘟爷java超神学堂 前言 本章我们来介绍下SpringBoot对静态资源的支持以及很重要的一个类We ...
随机推荐
- hibernate Day1 案例代码
1.创建Person类 package com.icss.pojo; public class Person { private int uid; private String uname; priv ...
- win10下JDK安装,配置环境变量后报Error: could not open `C:\Program Files\Java\jre1.8.0_112\lib\amd64\jvm.cfg'
把Path里面的%JAVA_HOME%/bin放在最前面.
- 用户名密码登录小程序及input与raw_input区别。
一.此次程序需要实现: 1.设定固定的用户名密码 2.用户名密码输入正确打印登录正确信息 3.仅仅运行三次登录 二.本次使用的python版本为: Windows下版本号: C:\Users\dais ...
- PowerShell和Bash的介绍
PowerShell是运行在windows平台的脚本,而Bash是运行在linux平台的脚本 现在bash能做的事情,PowerShell也能做,PowerShell的强大之处是它可以管理window ...
- array_keys
<?php$array = array(0 => 100, "color" => "red");print_r(array_keys($arr ...
- 关于php的问题
$polling_items = db_fetch_assoc("SELECT * FROM poller_item WHERE rrd_next_step<=0 ORDER by h ...
- H3C S5024P交换机 H3C AR28-31路由器命令
H3C S5024P交换机 H3C AR28-31路由器命令 交换机命令 各个视图的切换: 注意命令要在相应的视图下执行 在用户视图下键入quit命令可以断开与交换机的连接.在其它视图中键入quit命 ...
- powerDesigner 一些设置
常用设置 table中需要显示的内容 --------------------------------------------------------------------------------- ...
- vue 模块 props
inbody.vue <template> <div> <Breadcrumb :style="{margin: '24px 0'}"> < ...
- 我的app自动化实战练习一
''' -*- coding: utf-8 -*- @Time : 2019/6/10 0010 10:39 @Author : 无邪 @File : test_data.py @Software: ...