前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hexo自动更新

Hexo自动更新

原创
作者头像
Qwe7
发布2022-03-24 08:15:29
9700
发布2022-03-24 08:15:29
举报
文章被收录于专栏:网络收集

前言

  我的Hexo并没有直接部署在本地机器或者VPS上,而是通过Cloud Studio => 腾讯开发者平台(原coding) => VPS这样的流程来更新博客,这就导致每次改动博客或更新博文变得很繁琐,所以我决定用WebHook来精简流程,即Cloud Studio => VPS,本文为过程记录。

WebHook

维基百科

  网页开发中的网络钩子(Webhook)是一种通过自定义回调函数来增加或更改网页表现的方法。这些回调可被可能与原始网站或应用相关的第三方用户及开发者保存、修改与管理。术语“网络钩子”由杰夫·林德塞(Jeff Lindsay)于2007年通过给计算机编程术语“钩子”(Hook)加上前缀得来。

原理图

宝塔WebHook

  我对WebHook本身并没有兴趣,也不想去手动实现,这里我用的是宝塔面板所集成的插件,非常简单方便,避免各种折腾。   首先在软件商店处安装宝塔WebHook,然后点编辑将以下shell代码复制粘贴进去(可根据需求修改):

代码语言:javascript
复制
#!/bin/bash
echo ""
#输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "Start"

#此处填写你的web站点路径,即博客在VPS的存放路径
gitPath="/www/wwwroot/..."

echo "Web站点路径:$gitPath"

#判断项目路径是否存在
if [ -d "$gitPath" ]; then
        cd $gitPath
        git pull origin master
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "End"
        exit
fi

  然后点查看密钥将密钥组成以下格式,并复制粘贴到腾讯云开发者平台(原coding)WebHook处(githubgitee同理)。

代码语言:javascript
复制
http://宝塔面板地址:端口/hook?access_key=密钥

  至此,每当你push更改到你的博客远程仓库,VPS都会自动同步。

注意事项

  • 最好不要开启面板SSLWebHook容易出现证书错误等问题。
  • 要用ssh的方式连接远程仓库,如果是https的方式,在git pull的时候需要提供帐号密码。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • WebHook
    • 维基百科
      • 原理图
      • 宝塔WebHook
      • 注意事项
      相关产品与服务
      Cloud Studio(云端 IDE)
      Cloud Studio(云端 IDE)是基于浏览器的集成式开发环境,为开发者提供了一个稳定的云端工作站。用户在使用 Cloud Studio 时无需安装,随时随地打开浏览器即可使用。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档