$Ghost$ Blog 折腾笔记
九涅·烧包包儿 / / 程序员 / 阅读量

服务器信息

Ubuntu 16.04 阿里云学生机

安装node 和 Mariadb

apt 加入 nodejs源

curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -

npm 换源

npm config set registry https://r.npm.taobao.org # npm 镜像替换为淘宝npm节点
npm config set disturl https://npm.taobao.org/dist # node-gyp 编译依赖的 node 源码镜像
npm config set node_sqlite3_binary_host_mirror https://npm.taobao.org/mirrors # sqlite3 镜像

# ghost-cli 使用 yarn 包管理器,所以进行源配置
sudo npm install -g yarn
yarn config set registry https://r.npm.taobao.org # yarn 镜像替换为淘宝npm节点
yarn config set disturl https://npm.taobao.org/dist # node-gyp 编译依赖的 node 源码镜像
yarn config set node_sqlite3_binary_host_mirror https://npm.taobao.org/mirrors # sqlite3 镜像

nginx 安装与配置

sudo apt-get install nginx
nginx -v # 输出版本号
#如果ufw已激活,则防火墙允许HTTP和HTTPS连接,所以打开防火墙:
sudo ufw allow 'Nginx Full'

安装 mariadb

https://downloads.mariadb.org/mariadb/repositories/#mirror=shanghai-university&distro=Ubuntu

下载完了之后,mariadb是允许root以空密码,socket方式登录的,需要改一下root密码。

update mysql.user set authentication_string = password('root'), plugin = 'mysql_native_password' where user = 'root';。
flush privileges;

另外一定要 mysql_native_password 因为node.js连mysql的脚本不支持一些特别高级的连接方式。

安装Ghost

安装 Ghost-Cli & Ghost

sudo npm install ghost-cli@latest -g # 安装Ghost脚手架

# 创建ghost文件夹的网站目录,这个名字可以自己随便定义
sudo mkdir -p /var/www/ghost
 
# 使文件夹拥有权限,<user>是当前用户名
# 例如当前用户名是ubuntu,那么应该是:sudo chown ubuntu:ubuntu /var/www/ghost
sudo chown <user>:<user> /var/www/ghost
 
# 设置读写权限
sudo chmod 775 /var/www/ghost
 
# 定位
cd /var/www/ghost
 
# 进行Ghost博客平台安装 -V 表示打印安装日志
ghost install -V

安装过程根据主机性能来决定,下面是选项配置讲解:

Enter your blog URL: 博客展示地址,格式:http(s):(www.)example.com,不支持ip地址。
Enter your MySQL hostname: 数据库主机地址,回车默认是localhost
Enter your MySQL username: / Enter your MySQL password: 数据库用户名/密码,上面安装的数据库用户名是root,密码是自己设置的。
Enter your Ghost database name: Ghost博客数据库名
Do you wish to set up "ghost" mysql user? 设置数据库用户名为ghost,这个为了避免权限太大导致数据瞎搞,Ghost官方推荐是y。
Do you wish to set up Nginx? 自动化Nginx,推荐y。
Do you wish to set up SSL? 配置SSL证书
Enter your email (For SSL Certificate):个人邮箱,配置ssl证书需要的邮箱地址。
Do you wish to set up Systemd? 使用ghost进程管理工具,推荐y,个人觉得海星。
Do you want to start Ghost? 启动Ghost博客就可以进入网址访问。

如果那里卡住了,想要重装的话,就这么搞

ghost unintall # 卸载原有 ghost 程序
sudo rm -rf /var/www/ghost/*
npm cache clean --force # 清空缓存
ghost install -V # -V 是把所有的安装日志打印到控制台,方便查看安装日志

配置主题

我才用的主题是 rebirth 个人非常喜欢,可以的话大家可以支持下作者 https://github.com/JaxsonWang/rebirth

在启动ghost之后,访问xxx.cn/ghost 页面将为站点增加一个作者,用于管理站点。

之后说一下主题配置。访问作者的github页面后,按照README.md步骤下下来,(在本地)可以得到dist文件。

之后将这个dist文件打包为zip,在design处可以上传。

title

上传完毕之后,为了保持主题的更新,我在自己的github上为dist文件夹下的东西创建了git repo,这样登录服务器后,访问/content/theme下的文件,就可以不用ftp之类的东西更新主题了。

配置Latex

还有最后一个小问题,Latex还不支持。不过不要担心,在此处加入如下js代码就行了。

图片标题
<script type="text/javascript" src="https://cdn.bootcss.com/mathjax/2.7.3/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>  
<script type="text/x-mathjax-config">  
    MathJax.Hub.Config({
        tex2jax: {
            inlineMath: [['$','$'], ['$$','$$']],
            processEscapes: true
        }
    });
</script>  
支付宝捐赠
请使用支付宝扫一扫进行捐赠
微信捐赠
请使用微信扫一扫进行赞赏
有 0 篇文章