首页 > 运维 > linux运维 > 正文

Hexo部署至服务器(Ubuntu 20.04)

蓮花仙者
发布: 2025-07-14 08:30:02
原创
1001人浏览过

前言

本文将指导您如何从零开始,将Hexo项目部署到Ubuntu 20.04服务器上。

正文环境 服务器:虚拟机(Ubuntu 20.04) IP:192.168.75.138 客户端:Windows 10,使用Xshell连接服务器进行操作。

在Ubuntu上搭建Git服务器 首先,使用Xshell连接服务器,并切换到root用户,返回到根路径。

Hexo部署至服务器(Ubuntu 20.04)

创建Git仓库

  1. 安装openssh-server

命令如下:

帮衣帮-AI服装设计
帮衣帮-AI服装设计

AI服装设计神器,AI生成印花、虚拟试衣、面料替换

帮衣帮-AI服装设计 106
查看详情 帮衣帮-AI服装设计
sudo apt-get install openssh-server
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 安装完成后,检查ssh服务是否已启动

命令如下:

ps -e|grep ssh
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 创建一个名为blog的用户,用于管理Hexo项目

命令如下:

adduser blog
登录后复制

系统会提示输入密码,重复确认密码,后续内容直接回车即可。

Hexo部署至服务器(Ubuntu 20.04)

  1. 为blog用户添加文件写入权限

使用vim编辑/etc/sudoers文件

vim /etc/sudoers
登录后复制

找到User privilege specification部分,添加如下内容:

blog    ALL=(ALL:ALL) ALL
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 切换到blog用户
su blog
登录后复制
  1. 安装git

命令如下:

sudo apt-get install git-core
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 返回到根路径(cd /),在/var/repo下创建名为hexo_static的裸仓库

命令如下:

sudo mkdir /var/repo
sudo chown -R $USER:$USER /var/repo
sudo chmod -R 755 /var/repo
cd /var/repo
git init --bare hexo_static.git
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 进入该目录进行查看

Hexo部署至服务器(Ubuntu 20.04)

配置Nginx托管文件目录

  1. 首先安装Nginx

命令如下:

sudo apt-get install nginx -y
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 创建/var/www/hexo目录,用于Nginx托管,修改目录所有权和权限

命令如下:

sudo mkdir -p /var/www/hexo
sudo chown -R $USER:$USER /var/www/hexo
sudo chmod -R 755 /var/www/hexo
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 使用vim修改/etc/nginx/sites-enabled/default,使root指向hexo目录

命令如下:

sudo vim /etc/nginx/sites-enabled/default
登录后复制

找到server部分,修改如下内容:

root /var/www/hexo;
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 重启Nginx服务,使得改动生效

命令如下:

sudo service nginx restart
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

创建Git钩子

  1. 在之前创建的hexo_static裸仓库下有一个hooks文件夹,在其中创建一个名为post-receive的钩子文件:

命令如下:

vim /var/repo/hexo_static.git/hooks/post-receive
登录后复制

在其中写入如下内容:

#!/bin/bash
git --work-tree=/var/www/hexo --git-dir=/var/repo/hexo_static.git checkout -f
登录后复制

保存后退出。

  1. 使该文件变为可执行文件

命令如下:

chmod +x /var/repo/hexo_static.git/hooks/post-receive
登录后复制

在Windows上搭建客户端 首先安装git,这里不再详细说明。使用命令ssh-keygen -t rsa在Windows用户下的.ssh文件夹中生成密钥。将生成的公钥id_rsa.pub复制到Ubuntu服务器的/home/blog/.ssh/authorized_keys上。首先创建.ssh目录,并进入该目录:

sudo mkdir .ssh
cd .ssh/
登录后复制

接着创建authorized_keys文件:

sudo touch authorized_keys
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

  1. 将Windows下的id_rsa.pub文件内容复制到Ubuntu下的authorized_keys文件

命令如下:

sudo vim .ssh/authorized_keys
登录后复制

Hexo部署至服务器(Ubuntu 20.04)

部署Hexo项目 编辑Hexo的config.yml文件,在deploy部分修改repo项:

deploy:
  type: git
  repo: blog@server_ip:/var/repo/hexo_static.git
  branch: master
登录后复制

执行命令hexo deploy,将静态文件上传至Ubuntu服务器。

Hexo部署至服务器(Ubuntu 20.04)

进入目录var/www/hexo/下,可以看到静态文件已全部上传。

Hexo部署至服务器(Ubuntu 20.04)

访问测试 打开浏览器,输入Ubuntu服务器的IP地址,就可以看到博客页面。

Hexo部署至服务器(Ubuntu 20.04)

补充 如果部署到购买的云服务器(如阿里云)上,可能出现访问服务器IP没有响应的情况。

点击云服务器/ECS,在安全组规则中手动添加一条80端口的规则:

Hexo部署至服务器(Ubuntu 20.04)

后记(后续补充域名的配置操作)

参考资料:

  • 用Hexo部署博客到Ubuntu服务器 - 简书 (jianshu.com)
  • Git版本控制之ubuntu搭建Git服务器 - StoneGeek - 博客园 (cnblogs.com)

以上就是Hexo部署至服务器(Ubuntu 20.04)的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号