Hexo进阶教程(四)| 部署Hexo到自己的服务器

December 09, 2023
测试
测试
测试
测试
2 分钟阅读

1. 待优化问题

Hexo博客通常是被部署在Github上的,也有部署在Gitee、coding上的,这些平台最大的优点是免费,然而也是各有缺点。

这篇文章就来讲述如何部署 Hexo 博客到自己的服务器上,对于云服务器的配置,1核2G的学生机足够。

我在部署到腾讯云后,使用站长之家国内测速工具分析,如图:

站点测速结果

2. 安装宝塔面板

宝塔面板(www.bt.cn)是一个非常简单易用的服务器运维面板,安装该面板后,不需要在命令行安装Nginx 服务器这些,直接在面板中一键部署即可。

系统要求

  • 内存:512M以上,推荐768M以上(纯面板约占系统60M内存)
  • 硬盘:100M以上可用硬盘空间(纯面板约占20M磁盘空间)
  • 系统:CentOS 7.1+ (Ubuntu16.04+.、Debian9.0+),确保是干净的操作系统,没有安装过其它环境带的Apache/Nginx/php/MySQL(已有环境不可安装)

Ubuntu安装宝塔面板

如果是别的操作系统,请参考官方文档: https://www.bt.cn/bbs/thread-19376-1-1.html

登录到服务器后执行下面的命令,即可安装:

wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

安装之后如图:

宝塔面板安装成功

安装完成之后有三个信息非常重要:

  • Bt-Panel:浏览器中访问宝塔面板的地址
  • username:宝塔面板登录用户名
  • password:宝塔面板登录密码

访问并登录宝塔面板

在浏览器中输入地址即可访问宝塔面板:

然后使用给出的默认用户名和密码进行登录,面板界面如下:

宝塔面板主界面

接下来就可以愉快的happy了!

修改访问地址和登录账户

当然了,默认的这个密码太复杂了,在登录之后可以在面板设置中进行修改:

宝塔设置面板

3. 安装Nginx服务器

安装方式非常简单,在宝塔面板中进入“软件商店”,找到nginx,点击安装即可:

Nginx安装方法

Nginx安装版本选择

安装进度可以在消息中查看:

宝塔面板任务队列

4. 建立网站

在宝塔面板中创建站点非常简单,如图:

创建网站

然后将填写的网站域名解析到服务器的ip,在浏览器中访问该域名,即可看到站点主页:

站点首页

5. 部署Hexo

网站建立后,再来部署Hexo就非常简单了。

Hexo博客也称静态页面,其实就是public文件夹的所有内容,也是上传到mculover666.github.io这个仓库的所有文件:

github.io仓库内容

所以:只要我们将这个仓库中所有的文件拉取下来,再放到刚刚我们网站的根目录即可。

在网站面板中可以看到网站根目录:

网站根目录

接下来我们需要在命令行中操作,将github.io仓库中的内容拉取下来,在宝塔面板首页中打开“宝塔SSH终端”:

因为操作的是根目录下的文件,所以需要root账户登录:

腾讯云不支持root直接登录,可以先登录一个账户,然后使用sduo su 切换到root账户。

进入根目录:

进入根目录

拉取Github仓库文件

接下来,我们只需要将所有文件强制覆盖到站点目录下即可:

强制复制文件

接下来我们再去浏览器中访问一下站点即可成功看到界面:

Mculover666的博客主页

如果没法看到站点的话,清理一下浏览器缓存。

当然了,每次更新github.io仓库后,都要来服务器重新拉取一下,这个比较麻烦,我们可以将上述命令写一个脚本,放在root用户目录下:

cd ~
vim run.sh

在脚本中编辑如下内容:

cd /www/wwwroot/mculover666.github.io
git pull origin master
cd ..
cp -rf mculover666.github.io/* www.mculover666.cn/
echo successful

然后退出vim并保存,给脚本加上可执行权限:

chmod 777 run.sh

最后运行脚本:

./run.sh

运行脚本

这样每次我们登上服务器后,切换到root账户,直接执行该脚本即可。

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多