在OpenBSD 6上设置Ghost Professional发布平台

Ghost是与WordPress竞争的最新,最大的暴发户。主题开发既快速又容易学习,因为Ghost开发人员决定同时使用ember.jshandlebars.js框架来消除一些学习过程。安装和设置时间大约需要45-60分钟,并使用下列技术:Node.jsRelayd,和Httpd

注意:请用您的域名替换example.org,并用您分配的Vultr IP地址替换192.0.2.x。我们还将使用仅对测试非常有用的自签名证书。如果您决定在生产中使用Ghost,那么使用真实的证书非常重要。使用Let's Encrypt可以免费获得真实证书。

配置OpenBSD

启用Httpdrelayd

# rcctl enable httpd relayd

/etc/httpd.conf为Httpd 创建配置文件。在此示例中,Httpd的唯一目的是将请求重定向到https。中继实际上是侦听https端口并将请求转发给Ghost的那个。

prefork 3
types { include "/usr/share/misc/mime.types" }

server "www.example.org" {
    listen on 192.0.2.1 port 80 
    # Redirect to https
    block return 301 "https://$SERVER_NAME:$REQUEST_URI"
}

为您的Ghost部署创建测试SSL证书。由于这仅用于测试,因此您可以将大多数字段留空。您需要填写的唯一Common Name字段是该字段,该字段应与服务器的标准域名匹配。当准备好用真实有效的证书替换自签名证书时,请记住要保持文件名相同。Relayd期望使用命名约定<ip address>.crt和来找到其密钥和证书<ip address>.key

# cd /etc/ssl
# openssl req -x509 -new -nodes -newkey rsa:4096 -keyout private/192.0.2.1.key -out 192.0.2.1.crt -days 364 -sha256
# chmod 0400 private/192.0.2.1.key

创建/etc/relayd.conf中继的配置文件。中继完成了将请求重定向到Ghost的魔力。

prefork 3

http protocol https {
    match request header append "X-Forwarded-For" value "$REMOTE_ADDR"
    match request header append "X-Forwarded-By" \
        value "$SERVER_ADDR:$SERVER_PORT"

    tcp { nodelay, sack, socket buffer 65536, backlog 128 }

    tls { no tlsv1, ciphers HIGH }
    tls no session tickets
}
relay ghost {
    listen on 192.0.2.1 port 443 tls
    protocol https
    forward to 127.0.0.1 port 2368
}

添加以下软件包。

pkg_add -r node unzip wget  

安装和配置Ghost

为Ghost安装创建用户和主目录。例如,创建一个名为的用户,该用户ghost的主目录名为/var/www/ghost。为此帐户使用非常安全的密码

# user add -m -c "Ghost User" -d /var/www/ghost -G wheel -g =uid -u 5000 -s /bin/ksh ghost
# passwd ghost 

更改为ghost用户并下载最新版本的Ghost。

# doas su ghost
# cd /var/www/ghost
# mkdir blog
# cd blog/
# wget https://ghost.org/zip/ghost-latest.zip
# unzip ghost-latest.zip

安装Ghost。

# npm install sqlite3 --sqlite=/usr/local
# npm install --production
# npm install forever
# doas npm install -g knex-migrator

配置Ghost。更换database的部分config.production.jsondatabase下面的,如果你想使用条款sqlite代替mysql。Sqlite每天将轻松处理约100,000个连接。如果已经安装了MySQL,则始终可以选择使用它。对于defaults.json文件,将的domain部分更改url为您的域。

# cd core/server/config/env/config/
# vi config.production.json

"database": {
    "client": "sqlite3",
    "connection": {
            "filename": "content/data/ghost.db"
    }, 

# cd core/server/config/
# vi defaults.json

"url": "http://www,example.org",
"server": {
        "host": "127.0.0.1",
        "port": 2368
},

现在我们必须填充数据库并启动Ghost。

# cd ~/blog
# NODE_ENV=production knex-migrator init
# NODE_ENV=production ~/blog/node_modules/forever/bin/forever start ~/blog/index.js

执行netstat -na -f inet并查找127.0.0.1:2368条目。您还可以执行ps ax | grep node验证Ghost是否正在运行。

打开您喜欢的网络浏览器并浏览到http://www.example.org。您将被自动重定向到https://www.example.org。您将看到默认的Ghost页面。

浏览以http://www.example.org/ghost完成安装。


Tags: #BSD #Blogging

Leave a Comment

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。