2024安装hexo和next并部署到github和服务器最新教程

碎碎念

本来打算写点算法题上文所说的题目,结果被其他事情吸引了注意力。其实我之前也有过其他博客网站,但因为长期不维护,导致数据丢失其实是我懒得备份。这个博客现在部署在GitHub Pages上,github不倒,网站不灭,既省钱又稳定,但也有一些小问题。比如由于中国的gfw,GitHub的访问经常会受到限制,导致国内的小伙伴有时无法顺畅访问>_<。虽然我的博客里也没写啥有用的东西但还是希望能有更多的人看到~~或许我应该做做SEO?~~✨

刚好,我手上有两台服务器,在服务器上使用git创建私有库,并利用git hooks进行自动化部署,每次上传到gitHub的同时,数据也会同步到服务器。具体的教程,下次有时间再更新,这篇文章暂时就作为一个占位符?占位文章!,先在这里放着>ᴗ<


正文

你能找到这篇文章,相信你已经成功部署了hexo至本地

当然,为了照顾还没有部署的小伙伴

我在这里提供简短的教程 具体步骤请百度我觉得百度是世界上最大的广告站,到处都是广告 也可以参考Hexo官方文档获取更详细的信息。


这是我的blog网站 ivelisya’s blog

如果有人需要源码请在评论区留言喔其实是我想要多一点评论啦 欢迎交流与分享!

在这里插入图片描述


hexo本地部署教程超简化版

1.下载安装基础运行程序。
  • Git https://git-scm.com/
  • Node.js https://nodejs.org/en/
2.安装hexo

在你的node安装好并配置环境变量之后,会有一个npm命令

到你想要安装hexo的地方打开cmd

然后执行以下命令:

npm install -g hexo   # 进行安装
hexo init             # 初始化

到这里你已经完成了一半了是不是很简单

3.安装主题 毕竟原版不好看

这里我使用 next 主题

我安装的版本是 nexT v8

我更推荐的版本也是 nexT v8,原因的话就是老版本bug有点多

版本号仓库地址
2014~2017v5GitHub 仓库
2018~2019v6~v7GitHub 仓库
2020v8GitHub 仓库

安装主题就是站点根目录下直接 git clone 下来就可以了

git clone https://github.com/next-theme/hexo-theme-next即可

  • 打开站点配置文件,将 theme 那项改成 theme: next
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: next
# 搜索
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
  • 然后你就可以打开看看效果啦
hexo clean && hexo g && hexo s
INFO  Start processing
INFO  Hexo is running at http://localhost:4000/ . Press Ctrl+C to stop.
  • 访问 http://localhost:4000/ 即可查看本地部署效果

现在你已经完成本地部署了

部署至github page

  • 然后到 GitHub 创建一个和你用户名相同的仓库,后面加 .github.io

以我的 blog 为例,如下

在这里插入图片描述

  • 然后我们要实现免密登录,毕竟每次都输入密码也很麻烦
git config --global user.name "yourname"
git config --global user.email "youremail"

你也可以检查一下

git config user.name
git config user.email
  • 然后 Win + R 打开 cmd,然后执行
ssh-keygen -t rsa -C yourEmail

例如

ssh-keygen -t rsa -C simazhangyu@gmail.com
  • 然后你会发现 c:\user\yourName 下有一个 .ssh 目录,如果没有,打开隐藏文件夹,如下图

在这里插入图片描述

.ssh 文件夹下有 id_rsaid_rsa.pub,前一个是私钥,后一个是公钥

有兴趣的小伙伴可以了解一下 :ssh 公钥私钥原理 推荐阅读:SSH 密钥原理详解

我们需要将 id_rsa.pub 内的内容复制下来,然后进入 GitHub,点击 Settings,进入 SSH and GPG keys 选项,点击 New SSH key,然后填写 Title: BlogKey:你刚刚复制的公钥

到这里你已经完成了一大半啦

  • 进行配置

在这里插入图片描述

点开这个 _config.yml

在这里插入图片描述

对这个 deploy 进行修改

deploy:type: gitrepo: git@github.com:你的github用户名/你的github用户名.github.io.gitbranch: main

确保 deploy 配置正确,可以参考Hexo 部署文档

至此你就完成了部署到 github page 的全部教程

  • hexo clean && hexo g && hexo d 解释

    hexo clean 清理缓存

    hexo g 生成文章

    hexo d 推送到远端

使用 hexo d 推送试试吧,不出意外过一会你就可以访问 https://你的仓库名 来访问你的 blog 了,以我的 blog 为例,访问 https://ivelisya.github.io 即可

现在你已经完成部署至 github page 上了

数据保存

数据无价,辛辛苦苦写的 blog 数据丢失可就不好了

所以我建议在 GitHub 上面再开一个仓库来存放 blog 的源码

我建议是把 node_modules 这个文件夹也上传到仓库的,反正也不大,要是使用其它设备就可以直接 git clone 然后编写博客了,而不需要重新下载 hexo 这一步骤将加快部署速度。

默认大家都会使用 git,所以仅提供部分代码

# 强制添加 node_modules 文件夹
git add -f node_modules/
# 提交更改
git commit -m "Add node_modules directory"
# 推送到远程仓库
git push

部署至远端服务器

部署在 GitHub Pages 上有一些小问题。比如由于中国的 gfw,GitHub 的访问经常会受到限制,导致国内的小伙伴有时无法顺畅访问。所以可以同步部署在远端服务器上。这样以后推送的时候就会同时推到 GitHub 和个人服务器上了。

服务器设置

  • 登录服务器,然后安装 gitnginx

    我使用的是 root 账户

    服务器系统为 ubuntucentos 代码可能有所不同,请自行修改

    sudo apt update
    sudo apt upgrade
    sudo apt install git
    sudo apt install nginx
    
  • 创建一个 git 裸库

    cd ~
    git init --bare blogit.git
    
  • 使用 git hooks 进行自动化

    vim blogit.git/hooks/post-receive
    
  • 填入以下代码

    #!/bin/sh
    git --work-tree=/var/www/html --git-dir=/root/blogit.git checkout -f
    
  • 授予可执行权限

    chmod +x /root/blogit.git/hooks/post-receive
    
  • 实现免密登录

    cd .ssh/
    vim authorized_keys
    

    id_rsa.pub 的内容填入,id_rsa.pub 位于

    在这里插入图片描述

    如果没有请 Win + R 打开 cmd,然后执行

    ssh-keygen -t rsa -C yourEmail
    

    例如

    ssh-keygen -t rsa -C simazhangyu@gmail.com
    

    详细步骤请参考上文

    这里有一个问题

    服务器可能没有开 ssh 公钥登录,所以你可能需要手动设置

服务器设置 - 开启 ssh 公钥认证

编辑 /etc/ssh/sshd_config 文件

sudo vim /etc/ssh/sshd_config
在这里插入图片描述

如果这里是 no,或者被 # 注释掉了,取消注释,设置成如图所示那样

然后执行

sudo systemctl restart ssh
本地设置

修改配置文件,路径为

在这里插入图片描述

点开这个 _config.yml

在这里插入图片描述

对这个 deploy 进行修改

deploy:- type: gitrepo: https://github.com/Ivelisya/Ivelisya.github.io.gitbranch: main- type: gitrepo: root@yourServerIP:/root/blogit.gitbranch: master

确保两个 deploy 配置项都正确,可以参考Hexo 多部署配置

到这里你就已经完成了所有教程了✨

快使用 hexo d 推送试试吧!

总结

如果你觉得本教程有用请给我评论一下吧!求求了

如果你有任何问题,请给我留言,我会尽我所能提供帮助

我的 blog 网站 ivelisya’s blog

这将是一个长期更新支持维护的 blog

搭建博客容易,坚持写博客困难,希望各位小伙伴们不要三分钟热度,一定要坚持下去喔,对自己亲手搭建的网站负责嘛 自己已经搭建好 blog 的小伙伴可以给我留言,我可以将你的 blog 网站添加到友链>ᴗ<

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/491644.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【鸿睿创智开发板试用】RK3568 NPU的人工智能推理测试

目录 引言 驱动移植 例程编译 修改build.sh 执行编译 运行测试 部署libc的库文件 执行测试程序 结语 引言 鸿睿创智的H01开发板是基于RK3568芯片的&#xff0c;瑞芯微芯片的一大特色就是提供了NPU推理的支持。本文将对其NPU推理进行测试。 驱动移植 H01的开发板已经…

概率论得学习和整理29: 用EXCEL 描述二项分布

目录 1 关于二项分布的基本内容 2 二项分布的概率 2.1 核心要素 2.2 成功K次的概率&#xff0c;二项分布公式 2.3 期望和方差 2.4 具体试验 2.5 概率质量函数pmf 和cdf 3 二项分布的pmf图的改进 3.1 改进折线图 3.2 如何生成这种竖线图呢 4 不同的二项分布 4.1 p0.…

数据结构(二叉树)

前言&#xff1a; 在数据结构那片浩瀚无垠、仿若神秘宇宙的天地里&#xff0c;二叉树宛如一颗散发着独特光辉、极为耀眼的星辰。它就像一位技艺精湛的建筑师&#xff0c;运用独特的二叉分支结构&#xff0c;精心构建起层次分明、秩序井然的数据组织 “大厦”。根节点仿若大厦的…

docker仓库数据传输加密

1.进行加密数据运算对配置文件底下的内容进行删除 [rootlocalhost ~]# vim /etc/docker/daemon.json 重新启动docker程序 [rootlocalhost ~]# systemctl restart docker 2.建立加密目录&#xff0c;生成认证key和证书 [rootlocalhost ~]# mkdir certs [rootlocalhost ~]# open…

大数据技术与应用——数据可视化(山东省大数据职称考试)

大数据分析应用-初级 第一部分 基础知识 一、大数据法律法规、政策文件、相关标准 二、计算机基础知识 三、信息化基础知识 四、密码学 五、大数据安全 六、数据库系统 七、数据仓库. 第二部分 专业知识 一、大数据技术与应用 二、大数据分析模型 三、数据科学 数据可视化 大…

【指南】03 CSC联系外导

确定外导 课题组有合作关系的国外导师与自己研究方向密切相关的国外导师国外高校官网、谷歌学术、Research Gate等平台检索不可以是中国港澳台的高校科研院所或机构注意外导所在高校排名和科研水平可列表记录注意外国签证政策 发送邮件 自我介绍简要介绍CSC介绍自己的研究对…

0基础学前端-----CSS DAY6

0基础学前端-----CSS DAY6 视频参考&#xff1a;B站Pink老师 今天是CSS学习的第六天&#xff0c;今天开始的笔记对应Pink老师课程中的CSS第三天的内容。 本节重点&#xff1a;CSS的三大特性以及CSS的盒子模型。 1.CSS的三大特性 CSS有三个重要特性&#xff1a;层叠性、继承性…

本地部署大模型QPS推理测试

目录 1、测试环境1.1、显卡1.2、模型1.3、部署环境1.3.1、docker1.3.2、执行命令 2、测试问题2.1、20字左右问题2.2、50字左右问题2.3、100字左右问题 3、测试代码3.1、通用测试代码3.2、通用测试代码&#xff08;仅供参考&#xff09; 4、测试结果4.1、通用测试结果4.2、RAG测…

测试工程师八股文04|计算机网络 和 其他

一、计算机网络 1、http和https的区别 HTTP和HTTPS是用于在互联网上传输数据的协议。它们都是应用层协议&#xff0c;建立在TCP/IP协议栈之上&#xff0c;用于客户端&#xff08;如浏览器&#xff09;和服务器之间的通信。 ①http和https的主要区别在于安全性。http是一种明…

【Tomcat】第一站:理解tomcat与Socket

目录 1. Tomcat 1.1 Tomcat帮助启动http服务器。 1.2 tomcat理解&#xff1a; 2. 计算机网络最基本的流程 2.1 信息是怎么来的&#xff1f; 2.2 端口是干什么的&#xff1f; 3. 简单的Socket案例 服务端 客户端 启动&#xff1a; 3.2 在Tomcat发送信息&#xff0c;看…

抖音SEO短视频矩阵源码系统开发分享

在数字营销的前沿阵地&#xff0c;抖音短视频平台凭借其独特的魅力和庞大的用户基础&#xff0c;已成为社交媒体领域一股不可小觑的力量。随着平台影响力的持续扩大&#xff0c;如何有效提升视频内容的可见度与流量成为了内容创作者关注的焦点。在此背景下&#xff0c;一套专为…

使用 DeepSpeed 微调 OPT 基础语言模型

文章目录 OPT 基础语言模型Using OPT with DeepSpeedmain.py 解析1、导入库和模块2、解析命令行参数3、main 函数3.1 设备与分布式初始化3.2 模型与数据准备3.3 定义评估函数3.4 优化器与学习率调度器设置3.5 使用 deepspeed 进行模型等初始化3.6 训练循环3.7 模型保存 4、dsch…

window QT/C++ 与 lua交互(mingw + lua + LuaBridge + luasocket)

一、环境与准备工作 测试环境:win10 编译器:mingw QT版本:QT5.12.3 下载三种源码: LuaBridge源码:https://github.com/vinniefalco/LuaBridge LUA源码(本测试用的是5.3.5):https://www.lua.org/download.html luasocket源码:https://github.com/diegonehab/luasocket 目…

边缘智能创新应用大赛获奖作品系列三:边缘智能强力驱动,机器人天团花式整活赋能千行百业

边缘智能技术快速迭代&#xff0c;并与行业深度融合。它正重塑产业格局&#xff0c;催生新产品、新体验&#xff0c;带动终端需求增长。为促进边缘智能技术的进步与发展&#xff0c;拓展开发者的思路与能力&#xff0c;挖掘边缘智能应用的创新与潜能&#xff0c;高通技术公司联…

中后台管理信息系统:Axure12套高效原型设计框架模板全解析

中后台管理信息系统作为企业内部管理的核心支撑&#xff0c;其设计与实现对于提升企业的运营效率与决策能力具有至关重要的作用。为了满足多样化的中后台管理系统开发需求&#xff0c;一套全面、灵活的原型设计方案显得尤为重要。本文将深入探讨中后台管理信息系统通用原型方案…

云计算HCIP-OpenStack03

书接上回&#xff1a; 云计算HCIP-OpenStack02-CSDN博客 10.KeyStone keystone-Openstack&#xff0c;IAM服务&#xff08;统一身份认证&#xff09;-云服务 建议先去了解Hadoop&#xff08;大数据生态系统&#xff09;中的kerberos&#xff08;LDAPkerberos的鉴权机制&#xf…

el-table打印PDF预览,表头错位的解决方案

文章目录 背景与需求需求分析解决方案方案一&#xff1a;vue-print-nb插件安装引入使用 方案二安装使用 方案三 总结 背景与需求 本例以vue2项目为例&#xff0c;vue3与react等同理。 有个项目需要打印的功能&#xff0c;网页使用vue2写的&#xff0c;主体内容为表格el-table&a…

uniapp炫酷导航按钮及轮播指示器组件

一个拥有炫酷动效的导航按钮和指示器uniapp组件&#xff0c;帮你构建更炫酷的官网、宣传页、产品介绍等页面。 目前测试了vue2语法在h5和微信小程序的适配&#xff0c;其他平台理论上也能用。 下载及使用方法地址&#xff1a;iliya-desgin 展示&#xff1a; 目标页面出现在可视…

SAM大模型实践(一)

参考着segment-geospatial 项目主页的介绍&#xff0c;尝试复现一下Example-satallite的案例。 Satellite - segment-geospatialhttps://samgeo.gishub.org/examples/satellite/ 过程当中遇到了一些坑给大家做点分享&#xff0c;主要有几种情况&#xff0c;一个是torch…

如何为IntelliJ IDEA配置JVM参数

在使用IntelliJ IDEA进行Java开发时&#xff0c;合理配置JVM参数对于优化项目性能和资源管理至关重要。IntelliJ IDEA提供了两种方便的方式来设置JVM参数&#xff0c;以确保你的应用程序能够在最佳状态下运行。本文将详细介绍这两种方法&#xff1a;通过工具栏编辑配置和通过服…