0x00 背景概述
我們本期【5分鐘玩轉Lighthouse】系列教程中,將為大家介紹如何借力騰訊雲Lighthouse實例,快速搭建基於WordPress的個人博客網站。
WordPress 是全球最流行的開源的博客和內容管理網站的建站平台,具備使用簡單、功能強大、靈活可擴展的特點,提供豐富的主題插件。騰訊雲輕量應用服務器 Lighthouse 提供 WordPress 應用鏡像,您可以使用它快速搭建博客、企業官網、電商、論壇等各類網站。
目前騰訊雲最流行的IaaS層產品莫過於Lighthouse(輕量應用服務器)了。該產品以套餐形式提供了便捷的雲主機選購,網絡流量包、應用鏡像以及免密登錄等特性也更加註重了人性化的體驗。Lighthouse作為目前最炙手可熱的面向個人開發者及中小企業的新一代雲服務產品,特別適合搭建個人博客、網站、論壇、小型應用等多種場景。另外,其良心的價格和促銷力度也是前所未有,其持續運營的策略是相對面向未來的。
0x01 服務器準備
服務器的選擇上,當然是本文的主角:騰訊雲輕量應用服務器(Lighthouse)。這是目前最快的建站方式,我們開始上路吧~
創建及驗證
Lighthosue已經默認支持WordPress、Discuz!Q、LAMP、Node.js、ASP.NET以及寶塔面板等多種應用鏡像。對於WordPress應用場景,目前Lighthouse將打包搭建站點相關軟件組件:WordPress 5.3.2、Nginx 1.16.1、PHP 7.3.15、以及MariaDB 10.3.22,完全是業界的標配。而且,用戶無需關注如此多的軟件的安裝、配置及部署等繁雜工作,真正為用戶實現「實例創建即服務發佈」的極致體驗。注意,WordPress 應用鏡像底層基於 CentOS 7.6 64位操作系統。
Lighthouse上創建WordPress為什麼方便而直接?這得益於Lighthouse特有的應用鏡像特性支持,應用鏡像可以理解為對某種特定使用場景的軟件層面的整體解決方案。針對WordPress場景,依託Lighthouse的應用鏡像,我們可以無需關注底層相關軟件庫配置維護等一切細節,而更多地專註在博客撰寫內容產出上。
下圖是Lighthouse的創建頁面,傳送門->,我們本教程中選用新加坡地域的WordPress鏡像1核1G套餐。確實看得出,整個購買過程相當簡潔,僅需要選擇應用鏡像和實例套餐就行,體驗流暢。
購買完成後,我們便可以在Lighthouse服務器頁面中查看剛剛創建的WordPress服務器了:
稍等片刻,服務器實例的狀態會從「創建中」變為「運行中」,同時展示公網IP以及解鎖了「更多」的「管理」功能。
點擊「管理」即可進入實例管理界面。在「應用管理」下方點擊「首頁地址」(或者更簡單地,直接在瀏覽器輸入服務器公網IP),我們將看到WordPress的站點主頁的Hello world!示例博客。服務器創建順利完成,It works!
第一步至此順利完成!
登錄服務器
通過Lighthouse的WebShell可以一鍵免密碼登錄到服務器。WebShell登錄展示如下圖。
難道寫博客還要經常登錄服務器么?其實後面你會發現,寫博客的過程根本不需要。不過,通過WebShell我們可以更加仔細地審視檢查服務器上地一切狀態如進程、目錄,並完成手動重啟服務等操作。我們可以看出,Lighthouse作為一款IaaS層的基礎計算產品,提供給用戶的是全部的服務器操作權限/功能,這點對於中高級的開發人員是非常方便的,你可以靈活定製的實例內部的一切。
登錄WordPress控制面板
在Lighthouse的實例控制台頁面,其下的「應用管理」標籤欄中,詳細展示如何登錄WordPress控制面板的方法。
通過「管理員登錄地址」的鏈接,通常是服務器IP + wp-login.php
的形式,打開新的登錄頁面。
登錄頁面時需要輸入用戶名(admin)以及密碼,它們存在服務器的lighthouse主目錄的credentials.txt文件里。通過cat
命令查看即可。
0x02 發佈文章
下面我們來發佈第一篇文章~
首先通過上節所述的方法登錄WordPress的後台管理界面(WordPress Dashboard),如下圖所示。這個管理界面經過社區多年的完善優化,目前已經非常人性化了:通過它,我們可以清楚地對網站的作者、文章、頁面、評論、外觀等幾乎全部的資源對象進行一站式地查看管理。另外,控制面板內可以設置調整語言為中文。
添加文章可以通過左側Posts管理子界面里Add New按鈕直接完成創建;也可以更簡單地,如下圖直接通過鏈接「write your first blog post」進入文章編輯界面。
在文章編輯界面,我們可以所看即所得地編輯博客內容。主編輯區域可以完成添加標題、段落、引用、插入圖片/視頻等等內容編輯工作;而右側邊欄里是用來完成對文章元數據/屬性的設置,如所屬的分類、標籤等。注意Permalink這個屬性指的是該文章的永久URL鏈接,可以理解為它是外部訪問此文章時用的「指定ID」,搜索引擎也是通過Permalink來檢索文章的。
WordPress生成的頁面是終端自適應的,可以通過瀏覽器的調試功能(Developer tools -> Toggle device toolbar)來調整驗證其在手機屏幕上的展示效果。
接下來,我們開始為新博客加一點色彩~
0x03 風格美化
「顏值即正義」,形式的意義有時甚至勝過內容。對於如何提升我們的博客顏值,這裡介紹兩個方法,也是WordPress默認就完善支持的便捷功能。
網站自定義
進入控制面板後,點擊幾乎是最大按鈕Customize Your Site,即可進入網站的自定義界面。
這裡可以更改的網站屬性非常多,從網站的標識(標題/副標題)、到文章的背景色/背景圖,從主題選項(顯示/隱藏搜索框、歸檔頁面設置)到菜單欄及插件設置,甚至還可以添加自定義樣式表。而且所有的變更都時可以立即預覽的,通過發佈「Publish」按鈕部署生效。
如圖,更新網站文章頁面的背景色為黃色:
主題更改
WordPress的默認主題(Theme)雖然優雅簡潔時尚,但如果仍不能滿足你的全部審美需求,那麼你需要的是就是通過「Change your theme completetly」的功能來更換網站的整個主題風格。
WordPress默認應該有4、5個預裝主題,還可以從官方的主題庫下載,目前應該有近4千個主題模板,可謂風格多樣,種類齊全,挑一款適合你品味的吧。
下圖為WordPress.org的主題庫,點擊「Install & Preview」按鈕即可安裝(下載需要一些時間)並與即時預覽了。
0x04 域名解析
通過IP訪問博客顯然不能滿足需求,我們需要的是一個有意義且辨識度高的主頁URL,個性化的域名對於博客類Web站點來說必選項。
如果你還沒有域名,去這裡申請註冊;如果有了域名可以去這裡添加解析。
其實,在Lighthouse的實例管理頁面,也有對應的傳送門。不得不說,這裡的產品設計還真是貼心。
點擊DNS解析,在CNS(騰訊雲解析服務)界面,選擇快速「添加網站解析」,會將www和@的A記錄綁定到我們的服務器IP即可。
後續我們的博客就能通過域名訪問了。
0x05 SSL證書
網站在部署SSL證書後,可以提供基於HTTPS的服務,整個站點的訪問將會被加密,利於確認身份也顯著提升了安全性。目前SSL訪問對於Web站點服務來說已經時標配,相信你的博客提供的一定是專業的內容資訊類Web服務,我們強烈推薦部署SSL證書。如果已有證書,可以參考官網的安裝SSL證書文檔,步驟也很清晰。
對於證書申請,首先可以考慮採買各個證書/雲服務商代理的SSL證書,肯定沒有任何問題,而且通常更通用,安全性也更好。不過對於個人博客這類中小網站,用Let』sEncrypt的免費證書通常已經足夠需求,申請過程目前也已經相當方便。我們本文以後者為例。
注意在申請證書時,不能佔用80端口,所以需要暫時停止Nginx的服務。
# 安裝Let'sEncrypt的certbot工具 sudo yum install certbot # 停止Nginx服務 sudo killall nginx # 申請證書 # sudo certbot certonly --standalone -n -m your-email@example.com --agree-tos -d YourAwesome.Domain
證書申請的執行過程,大致需要幾十秒:
證書的申請過程如上圖所示,可以看到,certbot通過ACME協議為我們申請了對應域名的證書。它通過http-01 challenge,即DNS驗證來實現身份確認。
對應證書文件在/etc/letsencrypt/live/YourAwesome.Domain/fullchain.pem;密鑰文件在/etc/letsencrypt/live/YourAwesome.Domain/privkey.pem。
然後更新Nginx配置,/usr/local/lighthouse/softwares/nginx/conf/include/wordpress.conf。注意我們通常將80端口重定向至443的HTTPS端口,配置可以參考如下(別忘了替換成你自己的域名):
server { listen 443 ssl default_server; server_name YourAwesome.Domain; server_tokens off; keepalive_timeout 5; ssl_certificate "/etc/letsencrypt/live/YourAwesome.Domain/fullchain.pem"; ssl_certificate_key "/etc/letsencrypt/live/YourAwesome.Domain/privkey.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2; ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; root /usr/local/lighthouse/softwares/wordpress; index index.php index.html; access_log logs/wordpress.log combinediox; error_log logs/wordpress.error.log; location ~* \.php$ { fastcgi_pass 127.0.0.1:9000; include fastcgi.conf; client_max_body_size 20m; fastcgi_connect_timeout 30s; fastcgi_send_timeout 30s; fastcgi_read_timeout 30s; fastcgi_intercept_errors on; } } server { listen 80; server_name YourAwesome.Domain; if ($host = YourAwesome.Domain) { return 301 https://$host$request_uri; } }
然後重啟Nginx,即可。
sudo /usr/local/lighthouse/softwares/nginx/sbin/nginx
通過瀏覽器重新訪問我們的站點,可以發現訪問時地址欄「加鎖」的標記。至此我們完成了驗證SSL證書和Nginx配置生效,大功告成!
0x06 總結展望
相信看到這裡,你一定可以通過Lighthouse服務器配置自己的WordPress博客了,接下來盡情地享受寫作的樂趣吧~