个人博客:欢迎访问
robots配置
在你网站的根目录下新建文本文件,robots.txt
编写以下内容
robots.txt generated at http://tool.chinaz.com/robots/
User-agent: *
Allow: /
Allow: /home/
Allow: /posts/
Allow: /archives/
Allow: /tags/
Allow: /categories/
Allow: /link/
Allow: /about/
Disallow: /js/
Disallow: /css/
Disallow: /images/
Sitemap: https://zhtblog.cn/sitemap.xml
Sitemap: https://zhtblog.cn/sitemap.xml
其中Allow代表的意思是爬虫可抓取的路径,完整解释如下:
Robots.txt 是存放在站点根目录下的一个纯文本文件。虽然它的设置很简单,但是作用却很强大。它可以指定搜索引擎蜘蛛只抓取指定的内容,或者是禁止搜索引擎蜘蛛抓取网站的部分或全部内容。
使用方法:
Robots.txt 文件应该放在网站根目录下,并且该文件是可以通过互联网进行访问的。
例如:如果您的网站地址是 http://www.yourdomain.com/那么,该文件必须能够通过 http://www.yourdomain.com/robots.txt 打开并看到里面的内容。
格式:
User-agent:
用于描述搜索引擎蜘蛛的名字,在" Robots.txt "文件中,如果有多条User-agent记录说明有多个搜索引擎蜘蛛会受到该协议的限制,对该文件来说,至少要有一条User-agent记录。如果该项的值设为*,则该协议对任何搜索引擎蜘蛛均有效,在" Robots.txt "文件中,"User-agent:*"这样的记录只能有一条。
Disallow:
用于描述不希望被访问到的一个URL,这个URL可以是一条完整的路径,也可以是部分的,任何以Disallow开头的URL均不会被Robot访问到。
举例:
例一:"Disallow:/help"是指/help.html 和/help/index.html都不允许搜索引擎蜘蛛抓取。
例二:"Disallow:/help/"是指允许搜索引擎蜘蛛抓取/help.html,而不能抓取/help/index.html。
例三:Disallow记录为空说明该网站的所有页面都允许被搜索引擎抓取,在"/robots.txt"文件中,至少要有一条Disallow记录。如果"/robots.txt"是一个空文件,则对于所有的搜索引擎蜘蛛,该网站都是开放的可以被抓取的。
#:Robots.txt 协议中的注释符。
综合例子 :
例一:通过"/robots.txt"禁止所有搜索引擎蜘蛛抓取"/bin/cgi/"目录,以及 "/tmp/"目录和 /foo.html 文件,设置方法如下:
User-agent: *
Disallow: /bin/cgi/
Disallow: /tmp/
Disallow: /foo.html
例二:通过"/robots.txt"只允许某个搜索引擎抓取,而禁止其他的搜索引擎抓取。如:只允许名为"slurp"的搜索引擎蜘蛛抓取,而拒绝其他的搜索引擎蜘蛛抓取 "/cgi/" 目录下的内容,设置方法如下:
User-agent: *
Disallow: /cgi/
User-agent: slurp
Disallow:
例三:禁止任何搜索引擎抓取我的网站,设置方法如下:
User-agent: *
Disallow: /
例四:只禁止某个搜索引擎抓取我的网站如:只禁止名为“slurp”的搜索引擎蜘蛛抓取,设置方法如下:
User-agent: slurp
Disallow: /
robots.txt 生成器
配置相关参数,自动生成robots内容的网站:
https://robots.51240.com/
http://tool.chinaz.com/robots/
百度站长平台配置
登录平台,找到robots
输入网址,检查,完成。
配置站点地图
hexo项目 npm install hexo-generator-sitemap --save
安装依赖
在_config.yml文件里添加以下代码
baidusitemap:
path: baidusitemap.xml
重新发布项目,即可看见根目录的站点文件
在百度站点地图里管理站点,下面找到自动提交,找到sitemap,添加域名加站点地图文件名即可baidusitemap.xml
自动推送
自动退送的话,我倒是发现Hexo框架已经给我们集成好了,只需要修改主题配置文件:
baidu_push: true
安装插件
在站点的根目录下执行:
npm install hexo-baidu-url-submit --save
提取主动推送Key
在刚刚的sitemap旁边有一个主动推送:
修改配置文件
在站点配置文件中添加如下配置项:
baidu_url_submit:
count: 100 ## 比如100,代表提交最新的一百个链接
host: guoyanjun.top ## 在百度站长平台中注册的域名
token: your_token ## 刚刚复制的秘钥,不要公布到任何地方。
path: baidu_urls.txt ## 文本文档的地址,新链接会保存在此文本文档里
然后还要在deploy里面添加新的配置项:
deploy:
- type:
repo:
branch:
message:
- type: baidu_url_submitter # 注意,这个为新增的
注意格式一定要和上面一致
然后在执行hexo g的时候就会生成新链接的文本文件。
在执行hexo d的时候会主动提交新链接。
禁止爬虫跟踪外链
当你提交了链接,写好了蜘蛛爬取协议之后,搜索引擎的蜘蛛就会来爬取你的文章内容。但是,如果你的文章中有外链,蜘蛛就会通过这个链接到别人的站点去。如果这个站点是友情链接还好,如果是非友链,就回严重影响网站的爬取。
为了避免蜘蛛进入非友情链接,需要为非友链添加上nofollow属性。推荐使用hexo-autonofollow插件。
在站点根目录下执行:
npm install hexo-autonofollow --save
修改站点配置文件,添加如下内容:
nofollow:
enable: true
exclude: # 例外链接
- 你自己的站点地址
- 友链地址
这样,例外的链接就不会被加上nofollow属性。
Google Search Console
https://www.google.com/webmasters/tools/home?hl=zh-CN
针对谷歌我们登陆谷歌搜索控制台在里面添加自己的站点就可以了。添加方法也很简单就是将一个带key的html从google下载下来后放到我们的自己的博客更目录上就可以了。
站点地图和robots配置大致同上。