在Linode上用Webinoly從無到有打造WordPress網站

文章最後更新於 2020 年 11 月 6 日

這篇文章會示範在Linode上建立一台新的主機,並利用Webinoly架設WordPress. 適合有Linux基本指令知識的人閱讀。

首先你要準備:

  1. Linode 帳號,如果沒有帳號參考這篇文章使用優惠碼申請:Linode 免費$100美元帳戶餘額的最新優惠碼 (2020年10月)
  2. 一個你可以更改DNS的A記錄的Domain,沒有的可以先用DuckDNS,後面介紹

準備好後就可以開始了

建立Linode

照下圖①~⑥步建立新的Linode

Image for post

上圖說明如下:

① 請選目前Webinoly有支援的 Ubuntu 20.04 LTS

② 如果想從台灣SSH順一點的話,建議可以選Tokyo 2, JP

③ 根據您的需求和預算,選一個適合的規格

④ 輸入任易用來識別的文字給你之後分類管理用

⑤ 設定root的密碼,要記起來

⑥ 按Create就開始建立

建立完成後,狀態會是Running,並且有獨立的IP Address,

Image for post

安裝Webinoly

安裝Webinoly的部分可以參考這篇 [Webinoly] 在Mac上用Docker建一個Ubuntu環境來玩玩Webinoly吧!的 3. 安裝Webinoly

# ssh到Linux主機
ssh root@{your ip address}
# 安裝Webinoly
wget -qO weby qrok.es/wy && sudo bash weby 3

基本上跟Docker那篇教學不一樣的地方就是,這裡的主機是用VPS,不需要做Port forwarding.

最後會看到安裝成功的畫面,可以把下面的DB Password記起來

Image for post

沒記也沒關系,之後用下面指令查詢即可

webinoly -dbpass

測試一下安裝

webinoly -verify

會發現

[INFO] HTTP Authentication Credentials not found!

只要用下面指令加入一組HTTP Authentication的帳密就行了

httpauth -add

DNS 設定 (免費Domain)

在安裝的等待期間,可以先去DuckDNS註冊一個免費的Domain來用用

DuckDNS網址:https://www.duckdns.org/

在Domains這裡,可以自訂CNAME,如果沒被人使用過的話就可以新增成功

Image for post
Image for post

接下來把你Linode主機的IP與ipv6輸入進去,按update ip與upudate ipv6就行

Image for post

瀏覽器試一下,看到Welcome to nginx!表示剛剛Webinoly環境已經裝好nginx

Image for post

安裝WordPress

用指令並預設使用Cache

site YOUR_DOMAIN -wp -cache=on
Image for post

裝好WordPress後, 再連你的網址可以進入安裝程序

Image for post

填入安裝所需資訊按「安裝 WordPress」

Image for post

安裝後登入到後台會發現目前Https還沒啟用,網站還是Not Secure

Image for post

設定HTTPS/SSL

只要用

site {YOUR DOMAIN} -ssl=on

就可以快速的設定好Https

Image for post

再進一次後台就會發現Connection is secure

Image for post

設定快取外掛

Webinoly安裝時用有使用參數-cache=on,會自動裝下面兩個外掛,先將他們啟用再一一設定

Image for post

在設定Nginx Helper的時候有時會找不到 「刪除本機伺服器快取檔案」這個選項,這時只要Radio Box點一點會出現了,可以看下面示範影片

設定Redis Object Cache

設定好就差不多了,跑個分感受一下,這是Linode $5/mo的方案

Image for post

設定Tools頁面的Default Site

Tools 頁面有提供phpinfo、phpMyAdmin等工具,可以用下列指令指定一個Domain為Tools的Site,預設IP為22222

webinoly -tools-site={YOUR DOMAIN}
Image for post

Webinoly預設會開的IP如下,如果你要用別的IP可能要在防火牆另外設定,如果是用Cloudflare請Check一下Cloudflare有開放的Port

  • 22/TCP (Inbound/Outbound)
  • 25/TCP (Outbound)
  • 80/TCP (Inbound/Outbound)
  • 443/TCP (Inbound/Outbound)
  • 587/TCP (Outbound) *Optional for SMTP
  • 11371/TCP (Outbound)
  • 22222/TCP (Inbound)

變更Tools的Port的範例

webinoly -tools-port={PORT}
Image for post

PS: 如果有裝ufw之類的防火牆,請記得開Port

Securing Your Server

建議讀官方寫的文件,幫你的主機做一些安全保護https://www.linode.com/docs/security/basics/securing-your-server/

WordPress是一個很容易被攻擊的網站,VPS也會常常被Brute-Force登入攻擊、xmlrpc.php攻擊、Bad bot攻擊等等,這篇就不討論,記得時常做備份,備份指令可參考這篇 Webinoly v1.13.0 版本更新速看及實測

以上謝謝您的閱讀,文章就到此結束,如果覺得有幫助到你的,可以給個拍手,再次感謝!

對Webinoly有興趣學習分享交流的朋友,歡迎加入Webinoly Study Group in Taiwan社團:

https://www.facebook.com/groups/webinolytaiwan

關於作者

卡哥
卡哥
我是Oscar (卡哥),前Yahoo Lead Engineer、高智商同好組織Mensa會員,超過十年的工作經驗,服務過Yahoo關鍵字廣告業務部門、電子商務及搜尋部門,喜歡彈吉他玩音樂,也喜歡投資美股、虛擬貨幣,樂於與人分享交流!

如果對文章內容有任何問題,歡迎在底下留言讓我知道。
如果你喜歡我的文章,可以按分享按鈕,讓更多的人看見我的文章。