Hexo+Coding+Github部署个人博客Error全集

February 26, 2020 · 教程 · 129次阅读

本文转自CSDN上小简铺子的文章 有较大修改(||๐_๐)

1. ERROR Deployer not found: git/baidu_url_submit

原因:

  1. 两个名字搞混淆,deploy 的type名baidu_url_submitter和百度站点推送配置名baidu_url_submit
  2. 检测相应的插件是否安装
 npm install hexo-baidu-url-submit --save

正确的站点配置方式为(需要注意YUML格式的编写):

deploy:
- type: git
 branch: master
 repo:
 github: XXXX你的github
 coding: XXXX你的Coding

 - type: baidu_url_submitter
# baidu_url_submit
baidu_url_submit:
 count: 20 # 提交最新的一个链接
 host:  # 在百度站长平台中注册的域名
 token:  # 请注意这是您的秘钥, 所以请不要把博客源代码发布在公众仓库里!
 path: baidu_urls.txt # 文本文档的地址, 新链接会保存在此文本文档里

2. 解决百度站点添加站点时html验证问题

问题描述: html文件验证错误

方法:

将在百度站点下载对应的html文件放在 hexo/source/ 文件夹后需要修改该html文件,需要打开该html文件在头部添加,同理谷歌站点html验证时候也如此

原因: 

不加layout: false,hexo会将html进行相应的渲染,添加其他网页信息元素

---
layout: false
---

3. 解决Hexo同时git提交文件至Coding和Github公私钥对SSH验证问题

直接重新生成一个新的公私钥即可

4. 解决Hexo 文章添加Gitment评论问题

问题描述: 总共遇3大坑,需要严格按照步骤来

  1. Error: Not Found问题
  2. Error: Comments Not Initialized
  3. Error:validation failed

最后解决的办法:
step1hexo/themes/next/_config.yml中对Gitment进行设置

gitment:
enable: true
mint: true # RECOMMEND, A mint on Gitment, to support count, language and proxy_gateway
count: true # Show comments count in post meta area
lazy: true # Comments lazy loading with a button
cleanly: false # Hide 'Powered by ...' on footer, and more
language: # Force language, or auto switch by theme
github_user: JianWenJun#我的博客位置为JianWenJun/JianWenJun.github.io
github_repo: JianWenJun.github.io#The repo you use to store Gitment comments
#在https://github.com/settings/developers配置自己的OAuth Apps,获取client_id和client_secret
client_id: **** # Github client id for the Gitment
client_secret: ***** # EITHER this or proxy_gateway, Github access secret token for the Gitment

Step2 若此时还出现 Error: Not Found 则打开hexo/themes/next/layout/_third-party/comments/gitment.swig 手动设置参数:找到代码`var gitment = new {{CommentsClass处,对上述_config中的gitment配置进行 手动添加

Step3 对于问题 Error: Comments Not Initialized 只要参数 github_usergithub_repoclient_idclient_secret 参数设置正确,稍等一会即可,第一次需要跳转github进行登录以注册应用的账号和密码登录。可能第一次登录会有些问题,再次登录即可

Step4 对于问题 Error:validation failed ,主要是github上的issues提交的id有字符限制。因为gitment是基于issues来发布评论的。id即为var gitment = new {{CommentsClass}}变量gitment的参数,在hexo/themes/next/layout/_third-party/comments/gitment.swig中,将id字符设置小一点即可,如id: '<%= page.date %>'因为id也用于区分不同的文章,所以需要唯一
可参考这条解决方法

5. 解决Hexo之Coding域名绑定申请SSL证书失败(这里也是要吐血的问题)

[搬运者注:这也是令我吐血的问题,网上找没找到什么方法,后来搜危险警告才知道这问题如何解决]

问题描述:

 这里我的DNS域名解析模式是 Coding(国内)+Github(国外) ,也就是说国外线路访问域名jianwenjun.xyz 会跳转至Github上来访问博客资源。国内线路访问域名 jianwenjun.xyz 会跳转至Coding来访问博客资源。
然而Coding上Page服务绑定自定义的域名时候,申请SSL的条件要求是:
10.png

这就很难受了,国外的也要能访问Coding服务器,但是我设置的Coding+Github双部署的目的就是Coding国内而Github国外——这就矛盾了,导致证书申请不下来
8.png

解决过程

step1 确保:你的需要绑定的自定义的域名需要在域名解析是 添加CNAME记录到coding提示的域名
_step2 将Coding设置为默认并 暂停github解析 即可成功获得证书

6. 解决Hexo之谷歌站点添加站点地图问题(这里真是要吐血半斤血)

问题描述:

No1. 使用html文件,验证站点域名,单独在浏览器访问 https://jianwenjun.xyz/google142f2e515691ce48.html 没问题,可是进行验证提示找不到html验证文件。

No2. 添加sitemap.xml站点地图出现,类似验证html的问题,浏览器单独访问没问题,可是测试就显示错误找不到文件
1.png

解决过程

对于NO1 可以使用其他验证方式例如DNS解析验证,但是没有解决根本性的问题。
step1 确保: 检测JianWenJun.github.io该站点在谷歌站点平台能 正常使用HTML验证 ,即提交JianWenJun.github.io站点到谷歌站点平台测试。

step2 确保: 再检测Github项目的Setting的Github Pages是否与你自己的域名绑定好
2.png

step3 确保: 检测你的DNS域名解析,这里我使用的是 Coding(国内)+Github(国外) 这种模式国内访问网站速度回快些 [现在coding渣的不行:搬运者] ,Coding(国内)+Github(国外)此模式下能将站点地图添加至谷歌站点平台。能将站点添加至谷歌站点平台的前提是国外的线路能访问到网站。

DNS解析做了如下测试:

测试1>Coding(国内)+Github(国外) :——添加测试成功,说明国外能访问到github上的资源。
谷歌平台站点添加测试图:
3.png
国内访问网站抓取图:访问的是Coding Pages的服务器
4.png

_测试2>Github(默认)+coding 国内_ ——情况等同于测试一

_测试3>Github(国内 + 暂停使用coding 国内_ ——此时国外不能访问要添加的站点jianwenjun.xyz上的github的资源。
谷歌平台站点添加测试图:出现错误
5.png

国内访问网站抓取图:该IP对应的是Github的服务器的IP
6.png

测试4>Github(国外 + 暂停使用coding 国内) ——此时国外能访问要添加的站点jianwenjun.xyz上的github的资源。但此时浏览器中加载不出jianwenjun.xyz网站的信息即国内访问不了
谷歌平台站点添加测试图:
7.png

测试5>Github(默认 + 暂停使用coding 国内) ——此时国外能访问说明可以在平台上添加站点,国内也能访问,但是访问的服务器地址是GIthub而不是Coding

总结:

最好的DNS域名解析 的方式是 Coding(国内)+Github(默认) 的形式,这样能做到国内线路访问的是Coding上部署的博客资源,国外线路访问的是Github上的资源,而当Coding上出现问题的时候,也能访问到Github上的博客资源。

搬运者:我 不赞同 这种方法,coding的服务经常挂,本网站使用github+CF的CDN+ 腾讯COS进行加速资源 具体操作后期会有一个完整教程…

测试这些真实太费时间了,因为DNSpod对域名解析后有生效时间,多次测试花费时间不少,还是在对问题的解决的心的执着,就这点给个赞吧!!!!(哈哈哈)

开心的写作吧

小简铺子
[原作者的博客哦↑真是辛苦原作者了——搬运者]
[没想到改这篇文章花了这么长时间啊——搬运者]

喝杯水

none

最后编辑于3个月前

添加新评论