阿里云服务器如何搭建Hexo个人博客?-阿里云开发者社区

开发者社区> 游客kfcg2625kf7ok> 正文

阿里云服务器如何搭建Hexo个人博客?

简介: 阿里云服务器如何搭建Hexo个人博客?
+关注继续查看

1. 博客的架构


先搞明白Hexo博客从搭建到自动发布的架构,才能更好的理解我们每一步进行的操作。

不然只跟着步骤过了一遍,却不知道为什么这么做。


首先看这张架构图:



image.png


整个流程就是本地将 *.md 渲染成静态文件,然后Git推送到服务器的repository,服务器再通过 git-hooks 同步网站根目录。


2. 整个搭建流程


前提条件:阿里云服务器


第一部分: 服务器环境搭建,包括安装 GitNginx配置 、创建 git 用户 。


第二部分: 本地Hexo初始化, 包括安装 NodeJShexo-cli, 生成本地静态网站


第三部分: 使用Git自动化部署发布博客


3. 服务器环境搭建


3-1.安装Git和NodeJS (CentOS 环境)


yum install git

安装NodeJS

curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -


NodeJS 安装可以参考: Linux安装NodeJS


3-2. 创建git用户


adduser git
chmod 740 /etc/sudoers
vim /etc/sudoers

找到以下内容


## Allow root to run any commands anywhere
root ALL=(ALL) ALL

在下面添加一行


git ALL=(ALL) ALL

保存退出后改回权限


chmod 400 /etc/sudoers

随后设置Git用户的密码,


#需要root权限
sudo passwd git

切换至git用户,创建 ~/.ssh 文件夹和 ~/.ssh/authorized_keys 文件,并赋予相应的权限


su git
mkdir ~/.ssh
vim ~/.ssh/authorized_keys

然后将电脑中执行 cat ~/.ssh/id_rsa.pub | pbcopy ,将公钥复制粘贴到authorized_keys

chmod 600 ~/.ssh/authorzied_keys
chmod 700 ~/.ssh


然后就可以执行ssh 命令测试是否可以免密登录


ssh -v git@SERVER

至此,Git用户添加完成


3-3. Nginx安装和配置


我是用的是lnmp 一键安装包,nginx安装教程一大堆,就不再叙述。主要看nginx配置。
找到nginx的配置文件,修改配置如下:


server
{
listen 80;
#listen [::]:80;
server_name www.seekbetter.me seekbetter.me;
index index.html index.htm index.php default.html default.htm default.php;
#这里要改成网站的根目录
root  /path/to/www;  

include other.conf;
#error_page   404   /404.html;
location ~ .*\.(ico|gif|jpg|jpeg|png|bmp|swf)$
{
    access_log   off;
    expires      1d;
}

location ~ .*\.(js|css|txt|xml)?$
{
    access_log   off;
    expires      12h;
}

location / {
    try_files $uri $uri/ =404;
}

access_log  /home/wwwlogs/blog.log  access;

}


4. 本地Hexo程序


4-1:初始化Hexo博客


首先要安装 hexo-cli,安装hexo-cli 需要 root 权限,使用 sudo 运行


sudo npm install -g hexo-cli

然后初始化Hexo程序


cd ~/Documents/code
hexo init blog

等执行成功以后安装两个插件, hexo-deployer-githexo-server ,这俩插件的作用分别是使用Git自动部署,和本地简单的服务器。


hexo-deployer-git帮助文档

hexo-server帮助文档


cd blog
npm install hexo-deployer-git --save
npm install hero-server

4-2. 生成自己的第一篇文章 hello world !


使用 hexo new <文章名称> 来新建文章,该命令会成成一个 .md文件放置在 sources/_posts文件夹。


hexo new "hello Hexo"
vim sources/_posts/hello-hexo.md

编辑完毕以后, 使用hexo g.md文件渲染成静态文件,然后启动hexo-server


hexo g
hexo server

现在便可以打开浏览器访问 来查看我们的博客了!


5. 自动化部署


5-1:服务器上建立git裸库


创建一个裸仓库,裸仓库就是只保存git信息的Repository, 首先切换到git用户确保git用户拥有仓库所有权

一定要加 --bare,这样才是一个裸库。


su git
cd ~
git init --bare blog.git

5-2. 使用 git-hooks 同步网站根目录


在这里我们使用的是 post-receive这个钩子,当git有收发的时候就会调用这个钩子。 在 ~/blog.git 裸库的 hooks文件夹中,

新建post-receive文件。


vim ~/blog.git/hooks/post-receive

!/bin/sh

git --work-tree=/path/to/www --git-dir=~/blog.git checkout -f


保存后,要赋予这个文件可执行权限


chmod +x post-receive

5-3. 配置_config.yml,完成自动化部署


然后打开 _config.yml, 找到 deploy


deploy:
type: git
repo: git&#64;SERVER:/home/git/blog.git    //&lt;repository url&gt;
branch: master            //这里填写分支   [branch]
message: 提交的信息         //自定义提交信息 (默认为 Site updated: {<!-- -->{ now(&#39;YYYY-MM-DD HH:mm:ss&#39;) }})


保存后,尝试将我们刚才写的”hello hexo”部署到服务器


hexo clean
hexo generate --deploy

访问服务器地址,就可以看到我们写的文章”Hello hexo”,以后写文章只需要:


hexo new "Blog article name"
···写文章
hexo clean && hexo generate --deploy

博客就更新咯!~


云服务器ECS地址:阿里云·云小站

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
个人搭建网站的服务器选择
首先,先弄清楚自己的需求和用途:1、是建立一个静态页面还是动态页面? 2、对域名有什么要求? 3、内容有多少?是否要支持请求量比较大的下载? 4、如果是动态页面要做成多大规模的? 5、BBS 一类的页面对在线用户数量的估算是多少? 6、有数据库的话是什么类型的?数据量多大? 7、网站内容有没有政治敏感的东西? 8、预算多少? 9、对安全性有没有要求? 一般来说,选择网站服务器需要考虑这么几个方面:买主机(空间 /VPS 等),主要考察空间大小 / 流量 / 连接数 / 数据库 / 流量 / 是否有其它特殊用途等。
6308 0
零基础安装wordpress,搭建个人博客!
总结一下使用wordpress搭建个人博客的三大步骤: 1.购买阿里云主机 2.选择安装wordpress镜像操作系统 3.安装配置wordpress 4.购买域名,配置域名解析 阿里云代金券1000元免费领取地址:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=2a7uv47d 新老阿里云账户均可领取!可用于购买阿里云服务器ECS、云数据库RDS、虚拟主机、安骑士、DDoS高防IP等100多云计算产品。
2865 0
Hi拼团,个人购买阿里云服务器首选优惠活动
阿里云服务器一直是广大个人用户上云的优先考虑对象,因为阿里云是国内最大的云服务商,有着非常好的口碑和服务,同时阿里云针对新用户购买阿里云服务器也推出了众多优惠活动,这其中最适合个人用户购买阿里云服务器的就是阿里云在2019年推出的全新活动:Hi拼团优惠活动。
3090 0
阿里云个人版,企业版免费用,满足这些条件就可以申请,你满足吗
阿里云提供免费试用套餐,为用户提供0门槛上云实践机会,个人版,企业版都有免费的云套餐可以申请,但需要满足一定条件: 免费试用申请地址,阿里云最新活动总页-新手专区-阿里云免费套餐 个人版需满足条件:1.2017年10月1日起新注册的用户,且注册内6个月内。
6854 0
云服务器 ECS 建站教程:部署Ghost博客(CentOS 7)
Ghost是一个免费的开源博客平台,使用JavaScript编写,基于Node.js,旨在简化个人博客和在线出版物的在线发布过程。
1502 0
如何用阿里云ECS服务器建站之网站运行环境配置搭建
本节介绍了用阿里云ECS服务器建站之前需要进行网站运行环境配置搭建步骤。
983 0
基于阿里云服务器与宝塔面板安装和搭建WordPress个人网站(图文教程)
基于阿里云服务器与宝塔面板安装和搭建WordPress个人网站(图文教程)
596 0
72
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载