日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Ghost 博客平台安装和配置

發(fā)布時(shí)間:2023/12/31 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ghost 博客平台安装和配置 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Ghost 是一個(gè)博客發(fā)布平臺(tái),和 Hexo 等類似。本文簡(jiǎn)要介紹如何安裝和配置 Ghost,環(huán)境為 Ubuntu 16.04 系統(tǒng)上,假設(shè)你已經(jīng)擁有一個(gè)服務(wù)器和一個(gè)域名。

安裝

安裝過(guò)程主要參考官方教程,下面我總結(jié)下:

  • 在系統(tǒng)上創(chuàng)建一個(gè)新用戶。一般安裝 Ghost 會(huì)使用一個(gè)新用戶,當(dāng)然這也不是必須的。創(chuàng)建用戶可以使用 useradd 和 adduser 命令,然后使用 usermod 命令將其加到 sudo 組里,最后使用新用戶登錄系統(tǒng)。命令詳細(xì)使用方法可參考其文檔,假設(shè)我們創(chuàng)建的用戶叫 price

  • 更新系統(tǒng),安裝 NGINX、MySQL、Node.js 和 Ghost-CLI

    sudo apt update# 安裝 NGINX、MySQL # 安裝 MySQL 時(shí)會(huì)彈出窗口讓輸入 MySQL 用戶名和密碼 # 用戶名默認(rèn) root,密碼自己設(shè)置,安裝 Ghost 時(shí)會(huì)用到 # 如果你的系統(tǒng)是 18.04,那么需要額外的一些步驟 # 參考 https://ghost.org/docs/install/ubuntu/#mysql-on-ubuntu-1804 sudo apt install nginx mysql-server# 配置防火墻 sudo ufw allow 'Nginx Full'# 安裝 Node.js curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash sudo apt install nodejs# 安裝 Ghost-CLI sudo npm install ghost-cli@latest -g
  • 創(chuàng)建安裝目錄,配置目錄權(quán)限,安裝 Ghost

    # 創(chuàng)建并配置目錄 sudo mkdir -p /var/www/ghost sudo chown price:price /var/www/ghost sudo chmod 775 /var/www/ghost cd /var/www/ghost# 安裝 Ghost ghost install
  • 在 ghost install 命令執(zhí)行之后,首先會(huì)下載安裝 ghost,然后會(huì)讓你一項(xiàng)一項(xiàng)的配置 ghost,主要有一下幾項(xiàng):

    • 博客地址:例如 https://example.com,帶上 http 或者 https,如果使用 https, Ghost 會(huì)自動(dòng)幫你設(shè)置。使用 IP 地址會(huì)報(bào)錯(cuò),但是這個(gè)具體怎么報(bào)錯(cuò)不清楚,還沒(méi)遇到過(guò),還是推薦先自己買個(gè)域名
    • MySQL hostname:如果 Ghost 和 MySQL 在一個(gè)服務(wù)器上的話,這一項(xiàng)默認(rèn) localhost 即可
    • MySQL 用戶名密碼:前面安裝 MySQL 的時(shí)候你設(shè)置的用戶名密碼
    • Ghost 數(shù)據(jù)庫(kù)名:默認(rèn)即可
    • 是否設(shè)置一個(gè) Ghost MySQL 用戶:默認(rèn)是,前提是你前面提供的 MySQL 用戶是 root 用戶
    • 是否設(shè)置 NGINX:默認(rèn)是
    • 是否設(shè)置 SSL:如果你前面提供的博客地址是 https,那么就選是,Ghost 會(huì)自動(dòng)幫你用 Let’s Encrypt 設(shè)置 SSL。你也可以之后手動(dòng)執(zhí)行 ghost setup ssl 來(lái)設(shè)置
    • 你的郵箱:輸入你的郵箱地址,萬(wàn)一你的證書有問(wèn)題(比如到期了),Let’s Encrypt 就會(huì)通知你,這個(gè)是和上面的 SSL 相關(guān)的
    • 是否設(shè)置 systemd:默認(rèn)是
    • 是否啟動(dòng) Ghost:默認(rèn)是
  • 至此,安裝工作全部完成,順利的話就可以輸入你的博客地址進(jìn)入博客了,也可以使用 ghost ls 來(lái)查看你的博客是否在運(yùn)行。

    配置

    Ghost 安裝好啟動(dòng)后,就可以輸入你的博客地址進(jìn)入博客了,在你的博客地址后加上 /ghost 進(jìn)入博客后臺(tái)頁(yè)面。第一次進(jìn)入需要先創(chuàng)建一個(gè)新作者(用戶),然后就可以進(jìn)行編輯發(fā)表文章了。

    里面有很多項(xiàng)可以配置,下面我說(shuō)下如何實(shí)現(xiàn)一些常用的功能。

    代碼高亮

    代碼高亮可以使用 Prism JS 庫(kù)和 Ghost 的 Code injection 來(lái)實(shí)現(xiàn),后者中的代碼會(huì)加入到每個(gè)頁(yè)面中。

    具體做法是將 Prism 的 js(實(shí)現(xiàn)代碼高亮) 和 css(主題) 地址分別插入到 Code injection 中的 foorter 和 header 中。地址可以使用 Cloudflare 提供的 CDN 地址。

    對(duì)于 js 來(lái)說(shuō),需要至少兩個(gè):一個(gè)核心 js 和 N 個(gè)特定語(yǔ)言相關(guān)的 js。如果你只需要 Python 語(yǔ)法高亮,那么只用添加 Python 的 js 即可。首先將核心 js 放在最上面,然后依次放入你需要的語(yǔ)言的 js,例如我想要實(shí)現(xiàn) bash 和 Python 的語(yǔ)法高亮,那么在 footer 中內(nèi)容如下:

    <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.16.0/prism.min.js" integrity="sha256-NFZVyNmS1YlmiklazBA+TALYJlJtZj/y/i/oADk6CVE=" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.16.0/components/prism-bash.min.js" integrity="sha256-0W9ddRPtgrjvZVUxGhU/ShLxFi3WGNV2T7A7bBTuDWo=" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.16.0/components/prism-python.min.js" integrity="sha256-zXSwQE9cCZ8HHjjOoy6sDGyl5/3i2VFAxU8XxJWfhC0=" crossorigin="anonymous"></script>

    對(duì)于 css 來(lái)說(shuō),指定了背景主題。Prism 提供 8 種主題,為了能夠直觀看到每個(gè)主題的樣子,我匯總起來(lái)做了一個(gè)圖如下,你可以選擇你想要的放入 header 即可:

    例如:

    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.16.0/themes/prism-tomorrow.min.css" integrity="sha256-xevuwyBEb2ZYh4nDhj0g3Z/rDBnM569hg9Vq6gEw/Sg=" crossorigin="anonymous" /> import numpy as np import pandas as pd# numpy 隨機(jī)數(shù) a = np.random.rand(5, 4) df = pd.DataFrame(a, columns=list('ABCD'))

    數(shù)學(xué)公式

    數(shù)學(xué)公式一般使用 MathJax 來(lái)渲染,同樣將如下代碼放入 Code injection 即可:

    <script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-MML-AM_CHTML' async></script>

    這樣會(huì)自動(dòng)時(shí)刻保持最新版本。

    E=mc2E = mc^2E=mc2

    加密博客站點(diǎn)

    實(shí)際上是為博客設(shè)置一個(gè)密碼,只能輸入密碼訪問(wèn),并且會(huì)取消一切 SEO 優(yōu)化。在 SETTINGS -> General -> ADVANCED SETTINGS 處啟用 Make this site private 即可。

    郵箱配置

    郵箱配置較長(zhǎng),放在了一篇單獨(dú)博文中,參見(jiàn)使用 Mailgun 配置 Ghost 郵箱一文。

    Reference

    • Adding code highlighting to Ghost blog
    • Prism
    • How to Add Syntax Highlighting to Ghost | Biron Themes
    • prism - cdnjs.com - The best FOSS CDN for web related libraries to speed up your websites!
    • MathJax | Beautiful math in all browsers.

    END

    總結(jié)

    以上是生活随笔為你收集整理的Ghost 博客平台安装和配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。