LogoNavigate back to the homepage

從 GatsbyJS 搬到 WordPress

Yish
October 13th, 2020 · 1 min read

GatsbyJS 強大,但客製化跟樣板相比 WordPress 完整生態系來說真的很少,尤其是各種需要 Trouble shooting 的部分在還沒寫文章前就已經累了。

  1. 想要好好經營 blog,作為後續紀錄。
  2. 透過 Netlify 與 Netilfy CMS 強大的驅動,可以達到免費效果,但編輯起來還是很不順手。
  3. 追根究柢還是專注在想要 “專心寫作” 這件事情身上,所以決定自建 WordPress 並且買了一個佈景主題來套用,雖說每個月有固定的花費(大概 $5 美),但相比之下整體體驗和生態系的強大支援實在是相當划算,以下是我建立的過程:

DigitalOcean

選用了最便宜的 Basic 1vCPU / 25GB SSD / 1TB transfer,以目前來說應該是很夠用,另外我是使用 marketplace 的一鍵安裝,並選用了 OpenLiteSpeed 作為 web server。

OpenLiteSpeed WordPress Hosting | DigitalOcean Marketplace 1-Click App

Region 選擇了新加坡,看了一下偶爾掉封包之外沒什麼太大問題,而且也不常發生。

接著照個下面描述連入配置服務器。

1$ ssh root@use_your_droplet_ip

過程中有遇到 SSL 派發問題,看著 litespeed 文件很快的解決了。 WordPress | Images | Cloud | LiteSpeed Documentation

如果要配置 OpenLiteSpeed 需要先連入後開啟 7080 port,連入配置,另外派發憑證後還是要進去修改 SSL 路徑:

1$ certbot certonly --webroot -w /var/www/html/ -d example.com -d www.example.com

基本上遇到問題是看著官方文件就可以解決了算是很清楚。

Domain

這邊需要到 DigitalOcean 的 Networking 配置 A Record 和 CNAME,另外還需要到 DNS 那邊修改 NameServer 配置 Name Server to DigitalOcean

1CNAME www.yourdomain.com
2A RECORD yourdomain.com
3
4ns1.digitalocean.com
5ns2.digitalocean.com
6ns3.digitalocean.com

Theme

Breek – Minimal Masonry Theme for WordPress by EstudioPatagon | ThemeForest 覺得這個佈景主題很不錯,之前也有購買 Ghost 版本,WordPress 更加強大。 也是照著官方文件配置,這邊要注意安裝佈景主題是要把多國語言套件,像是 Polylang 先停用,不然會出現辨識網址問題。

WP memory limit

檢測時發現 memory limit 是預設的 40M,連入 server /var/www/html 修改 wp-config.php

1define( 'WP_MEMORY_LIMIT', '256M' );

接著到 OpenLiteSpeed 配置頁重新啟動服務生效。

EstudioPatagon

WP plugins

  • LiteSpeed Cache 緩存
  • Ad Inserter 廣告套件
  • Code Syntax Block 代碼高亮

More articles from Yish

To Test Laravel Request layer (validation rules) from the fake controller

From my situation, I need to test my request validation rules, but here is a problem, I think I DO NOT make a request to the real route, so I have to create a fake controller and add to my test case, here is my solution.

September 24th, 2020 · 1 min read

Ordering Laravel middleware priority

Ordering the middleware through, I traced the underlying instance Kernel

August 17th, 2020 · 1 min read
© 2019–2020 Yish
Link to $https://twitter.com/yishlaiLink to $https://github.com/Mombuyish