hexo初次搭建


Hexo

Hexo是一个基于Nodejs的静态博客框架,此站就是基于Hexo框架搭建,下面简单介绍下搭建过程,省略细节,介绍大概

准备

1.一台服务器,1H2G || 2H4G etc……
2.一个域名,可要可不要
3.服务器相关配置etc
4.简介基于ubuntu20.04LTS,CentOS或大便(debian)系统类似

服务器

1.选择云服务器厂商购买服务器,例如国内腾讯云、阿里云等,国外AWS,Vultr等,贴个推广链接
腾讯云
阿里云
2.登陆你购买的服务器,比如公网IP是160.0.254.1,你可以选择终端直接ssh root@162.0.254.1,输入你的密码登陆

基本命令及介绍

1.首先更新apt源,安装npm,nginx等待完成

apt update
apt install npm nginx -y

2.进入到一个目录,比如/home/ubuntu/,npm安装hexo框架等待完成

cd /home/ubuntu
npm install hexo-cli -g
hexo init blog

3.进入到blog目录下,输入hexo s,hexo就启动了,默认4000端口,在浏览器输入http://162.0.254.1:4000,即可看到hexo自带的默认主题的hello world
4.修改下/home/ubuntu/blog/_config.yml,找到public_dir,修改为/var/www/html/blog/

hexo clear 清理hexo静态文件
hexo g 生成静态文件
hexo s 启动hexo服务
hexo new "test" 生成标题未test的一片新文章,同时控制台会输出文件路径,采用markdown语法编写,很简单的语法,不用担心学不会

美化

1.hexo自带的主题landscape是不是觉得不好看,很单调?那么hexo支持自定义主题功能派上用场了,进入/home/ubuntu/blog/theme/,下载主题,例如本站的blinkfox

git clone https://github.com/blinkfox/hexo-theme-matery.git

打开/home/ubuntu/blog/_config.yml,找到theme:landscape,修改成hexo-theme-matery,重新启动hexo即可
当然,还有更多玩法,还需要自行探索

域名设置

1.同样可以去上述云服务厂商购买一个域名,具体流程不细说了,例子domain.com
2.添加A记录@ A 162.0.254.1
添加泛解析* A 162.0.254.1

ssl证书申请

通过acmesh.sh脚本申请ZeroSSL免费证书,具体这里官方文档

nginx配置

我们打开/etc/nginx/site-enabled/,创建一个叫blog_domain_com文件,输入一下内容保存,具体需要根据你的域名修改

server {
    listen 80;
    server_name blog.domain.com;
    location / {
        index  index.html;
        try_files  $uri $uri/ /index.html;
        return 301 https://$server_name$request_uri;
    }   
}
server {
    listen 443 ssl;
    root /var/www/html/blog/;
    index index.html index.htm index.nginx-debian.html;
    server_name blog.domain.com;

    ssl on;
    ssl_certificate /var/www/ssl/fullchain.cer;
    ssl_certificate_key /var/www/ssl/domain.com.key;

    #enables all versions of TLS, but not SSLv2 or 3 which are weak and now deprecated.
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

    #Disables all weak ciphers
    ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
    ssl_prefer_server_ciphers on;
}

The end

这样后续写完文章,只需要hexo g生成一下静态文件,访问https://blog.domain.com即可看到
细细描述太多字了,仅提供大概流程,没几年前那个劲儿了


文章作者: 牛牛🐮
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 牛牛🐮 !
  目录