大家好,关于一键部署 Hexo 博客到腾讯云服务器很多朋友都还不太明白,今天小编就来为大家分享关于的知识,希望对各位有所帮助!
部署环境
环境本地环境MacOS Monterey 12.0.1 服务器环境CentOS Linux release 8.2.2004 (Core)
本地环境配置
hexo 本地构建过程网上太多,这里不再赘述。这里只是链接到服务器的一些准备工作。
生成 Git 密钥ssh-keygen-C'your@mail.com' 并按Enter。这时候你应该可以在~/.ssh/目录下看到两个新生成的密钥文件:
公钥:id_rsa.pub 私钥:id_rsa 稍后我们需要将公钥的内容复制到服务器。
服务器环境配置
服务器很干净,什么都没有,所以我们要一点点安装我们需要的东西
GitNginx强烈建议您重置腾讯云服务器默认密码,然后执行以下操作
Git 安装和配置
安装
切换到root用户(输入刚刚重置的密码即可)
suroot首先需要安装包的依赖
yuminstallcurl-develexpat-develgettext-developenssl-develzlib-develyuminstallgccperl-ExtUtils-MakeMaker 进入指定目录(这里选择usr/local/src),选择最新版本的Git(这里使用2.34.1),下载并解压
cd/usr/local/srcwgethttps://mirrors.edge.kernel.org/pub/software/scm/git/git-2.34.1.tar.gztar-zxvfgit-2.19.0.tar.gz解压出来的Git文件都是源文件,我们需要编译,进入Git解压目录,编译安装,安装位置(这里选择usr/local/git)。整个过程可能需要一段时间.
cdgit-2.34.1makeprefix=/usr/local/gitallmakeprefix=/usr/local/gitinstall 安装完后我们需要配置环境变量,打开环境变量配置文件:
在vim/etc/profile文件底部添加Git安装目录信息,为不熟悉Vim的同学提供快速操作步骤。按如下顺序按字母即可(这个保姆服务到位吗?)
G(光标快速移动到文件末尾)
o(添加新的空行并进入插入模式)
粘贴以下内容
Esc(进入正常模式)
:wq(保存并退出)
PATH=$PATH:/usr/local/git/binexportPATH 刷新环境变量使其生效
source/etc/profile 此时,Git 应该已经安装好了。您可以检查Git版本号是否与您指定的版本相同:
git --versionGit 新用户与配置创建git用户和密码
addusergitpasswdgit 将git 用户添加到sudoers 文件中,同时也赋予Vim 快捷操作
chmod740 /etc/sudoersvim /etc/sudoers/## 允许
这使您可以快速找到以下位置:
##AllowroottorunanycommandsanywhererootALL=(ALL)ALL在下面一行添加git用户内容,保存退出
gitALL=(ALL)ALL 改回sudoers 文件权限
chmod400 /etc/sudoers测试将上面本地生成的id_rsa.pub公钥内容复制到远程服务器。该命令默认会在远程服务器的git用户主目录中生成authorized_keys文件(~/.ssh/authorized_keys)。其中server_ip是公网IP,不是内部IP。不要复制错误。
ssh-copy-id-i~/.ssh/id_rsa.pubgit@server_ip 此时可以通过ssh命令测试连接(加上-v命令可以输出详细日志)。如果没有问题,您可以继续下一步。
ssh-vgit@server_ip博客网站目录配置
创建博客网站目录位置
同样切换到根目录,然后创建博客网站的根目录(这里选择/home/hexo)
surootmkdir /home/hexo 赋予git 用户权限
chowngit:git -R/home/hexo
自动化配置
指定目录位置(这里选择git用户主目录/home/git)创建一个名为blog.git的裸repo
cd/home/gitgitinit--bareblog.git 什么是裸存储库以及裸存储库的一些高级用法?您可以阅读以下三篇文章。下面的一些细节就不做过多介绍了。
Git Worktree 是一个很棒的方法。 Git Worktree的高级使用,一键生成Git Worktree工作目录。
同时给git用户授予相应的权限
chowngit:git-Rblog.git采用自动化配置,自然需要用到Git的hook功能。这里我们需要post-receive,并在blog hooks目录下新建一个文件:
vimblog.git/hooks/post-receive 然后添加以下内容(注意目录匹配),保存退出:
#!/bin/shgit--work-tree=/home/hexo--git-dir=/home/git/blog.gitcheckout -f最后给这个文件可执行权限
chmod+x/home/git/blog.git/hooks/post-receive 接下来创建一个链接,防止后续部署过程中出错
sudoln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack 至此,基本的准备工作就完成了。接下来我们需要处理Nginx的内容
Nginx 安装和配置安装同样切换到root用户,然后安装nginx,最后启动
surootyuminstall -ynginxsystemctlstartnginx.service 这时候在浏览器中输入公网IP地址,应该可以看到Nginx默认的欢迎界面
配置此处配置Nginx,将所有Http请求重定向为Https请求。这就要求我们有一个SSL证书。证书可以在云服务器上申请并下载对应的版本(这里选择Nginx证书)。下载后,解压。以我的证书为例:
.6317712_www.dayarch.top.key6317712_www.dayarch.top.pem0directories,2个文件通过scp命令将上述证书复制到远程服务器。通常,Nginx 证书应存储在/etc/nginx/cert 目录中。接下来选择存放在/home/ssl_cert下(如果该目录不存在,请自行创建)
scp~/Downloads/6317712_www.dayarch.top_nginx/6317712_www.dayarch.top.keyroot@server_ip:/home/ssl_certscp~/Downloads/6317712_www.dayarch.top_nginx/6317712_www.dayarch.top.pemroot@server_ip:/home/ss l_cert then open Nginx整体配置的配置文件
server{listen80;server_namedayarch.top;#个人域名重写^(.*)$https://$server_name$1permanent;#重定向}server{listen443;server_namedayarch.top;#个人域名sslon;ssl_certificate/home/ssl_cert/6317712_www.dayarch 。 top.pem;#.pemcertificatessl_certificate_key/home/ssl_cert/6317712_www.dayarch.top.key;#.keycertificatessl_session_cacheshared:SSL:1m;ssl_session_timeout5m;ssl_ciphersECDHE-RSA-AES128-GCM-SHA2563336 0ECDHE33 360ECDH:AES:HIGH:NULL:aNULL:MD5:ADH:RC4; ssl_protocolsTLSv1TLSv1.1TLSv1.2;ssl_prefer_server_cipherson;location/{root/home/hexo;#博客网站主目录indexindex.phpindex.htmlindex.htm;}error_page404/404.html;location=/404.html{root/usr/share/nginx/html;}error_page500502503504/50x.html;location=/50x.html{root/usr/share/nginx/html;}} 通过nginx -t 命令检查。如果一切正常,会输出如下结果:
nginx:configurationfile /etc/nginx/nginx.confsyntaxisoknginx:configurationfile /etc/nginx/nginx.conf 测试成功
重启 Nginx 服务
systemctlrestartnginx.service 至此,所有准备工作就完成了。接下来我们需要进行一些博客配置
本地博客配置修改
我们需要将远程服务器的Git仓库信息配置到Hexo站点配置文件(_config.yml)中
deploy:-type:gitrepo:git@server_ip:/home/git/blog.gitbranch:master 依次执行hexo命令进行部署
hexocleanhexgeneratehexodeploy 至此,我们距离成功仅一步之遥。
域名解析
登录你购买的域名服务器(比如我在阿里云),配置域名解析,指向我们服务器的公网地址:
验证
接下来,您可以在浏览器中输入域名,进行验证,并享受您的结果!
文章分享结束,一键部署 Hexo 博客到腾讯云服务器和的答案你都知道了吗?欢迎再次光临本站哦!
本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.iotsj.com//kuaixun/7614.html
用户评论
看这个标题,感觉学习 Hexo 搭建博客好简单!
有15位网友表示赞同!
终于有人把 Hexo 部署到腾讯云的过程详细记录了,太棒了!
有19位网友表示赞同!
我想试试部署到腾讯云服务器,这篇文章看起来很实用。
有9位网友表示赞同!
我之前一直用的是其他的博客平台,不知道 Hexo 怎么使用,这个教程看看能不能给我启发一下。
有19位网友表示赞同!
想要搭建一个属于自己的博客网站,感觉 Hexo 是个不错的选择哦!
有7位网友表示赞同!
最近想换个新的博客平台,Hexo 好像挺适合我的需求的。
有8位网友表示赞同!
部署到云服务器上,果然更强大一些,速度也会更快吧?
有10位网友表示赞同!
腾讯云服务器用起来怎么样呢?这个教程可以让我了解一下它的优势。
有9位网友表示赞同!
看完标题,感觉这次学习 Hexo 博客部署后,我的技术水平会提升不少!
有11位网友表示赞同!
51CTO.COM 这网站的文章一般质量都挺高的,能相信的。
有16位网友表示赞同!
我要开始学习 Hexo 的博客部署了,这篇教程看起来很全面。
有20位网友表示赞同!
希望这个教程能够详细介绍每个步骤,这样学习起来会更方便些。
有18位网友表示赞同!
搭建自己的博客网站,实现自己想要的内容呈现的方式,是不是很棒呢!
有11位网友表示赞同!
我已经很久没有更新我的个人博客了,看样子该重新学习一下部署了。
有13位网友表示赞同!
Hexo 博客模板那么多,我真不知道应该选择哪种风格的?
有18位网友表示赞同!
这个教程能够解决我想要搭建 Hexo 博客的一些疑惑吗?我要认真看看!
有16位网友表示赞同!
学习 Hexo 部署博客的过程一定很有挑战性吧!
有11位网友表示赞同!
期待看这篇攻略讲解如何解决部署过程中可能会遇到的问题!
有11位网友表示赞同!