手摸手帶你用Hexo擼部落格(三)之新增評論系統
阿新 • • 發佈:2021-01-04
[原文地址](https://boke.limeichao.cn/article/7885e224.html)
注: 筆者採用的是butterfly主題, 主題內建整合評論系統
## butterfly主題開啟評論
開啟評論需要在comments-use中填寫你需要的評論。
以Valine為例
```yaml
comments:
use:
- Valine
# 是否顯示服務商
text: true
# 懶載入 開啟之後無法計數
lazyload: false
# 評論計數
count: true
```
## 配置你的 LeanCloud 應用
遵循 [Valine](https://valine.js.org/)的指示去配置你的 LeanCloud 應用。以及檢視相應的配置説明。
```yaml
valine:
appId: # 先空著 先空著 先空著 (leancloud application app id)
appKey: # 先空著 先空著 先空著 (leancloud application app key)
pageSize: 10 # comment list page size
avatar: monsterid # gravatar style https://valine.js.org/#/avatar
lang: zh-CN # i18n: zh-CN/zh-TW/en/ja
placeholder: 記得留下你的暱稱和郵箱....可以快速收到回覆(頭像設定請參考https://valine.js.org/avatar.html)
guest_info: nick,mail,link #valine comment header info (nick/mail/link)
recordIP: false # Record reviewer IP
serverURLs: # This configuration is suitable for domestic custom domain name users, overseas version will be automatically detected (no need to manually fill in)
bg: /image/comment_bg.png # valine background
emojiCDN: # emoji CDN
enableQQ: false # enable the Nickname box to automatically get QQ Nickname and QQ Avatar
requiredFields: nick,mail # required fields (nick/mail)
option:
```
## 註冊LeanCloud賬號
**[註冊地址](https://console.leancloud.cn/register)**
![](https://pic.rmb.bdstatic.com/bjh/5421a6da88443359c5d4f7c0d561690f.png)
## 建立應用
一般選擇開發版就可以了, 土豪請選擇商用版, 優點是系統不會休眠
![](https://pic.rmb.bdstatic.com/bjh/667b015c81b4a27f882847ccac7b4f31.png)
選擇應用進入設定頁面
![](https://pic.rmb.bdstatic.com/bjh/8facdbbc388039b58b1d15ea658c10e8.png)
把這裡的AppId 和AppKey 新增到之前的配置中
建議設定域名白名單, 防止他人利用介面濫用
![](https://pic.rmb.bdstatic.com/bjh/5f35de88a4891a623e2444bd1da3191d.png)
## lean評論管理平臺的域名繫結
設定=>域名繫結=>繫結新域名
**需配置DNS節點**
![](https://pic.rmb.bdstatic.com/bjh/31ec74b599c2d3092f612a32afa1e63e.png)
如果遇到已備案域名顯示無法查詢到備案資訊
請前往官方社群 發帖反映問題
[傳送門](https://forum.leancloud.cn/t/topic/23752)
## lean部署
雲引擎=>部署
![](https://pic.rmb.bdstatic.com/bjh/f12479e7f86d8287e046805d55ee48e6.png)
部署地址: https://github.com/zhaojun1998/Valine-Admin
分支: master
此外,你需要設定雲引擎的環境變數以提供必要的資訊,點選雲引擎的設定頁,設定如下資訊:
1. **必選引數**
- `SITE_NAME` : 網站名稱。
- `SITE_URL` : 網站地址, **最後不要加 `/` 。**
- `SMTP_USER` : SMTP 服務使用者名稱,一般為郵箱地址。
- `SMTP_PASS` : SMTP 密碼,一般為授權碼,而不是郵箱的登陸密碼,請自行查詢對應郵件服務商的獲取方式
- `SMTP_SERVICE` : 郵件服務提供商,支援 `QQ`、`163`、`126`、`Gmail`、`"Yahoo"`、`......` ,全部支援請參考 : [Nodemailer Supported services](https://nodemailer.com/smtp/well-known/#supported-services)。 --- *如這裡沒有你使用的郵件提供商,請檢視[自定義郵件伺服器](https://github.com/zhaojun1998/Valine-Admin/blob/master/高階配置.md#自定義郵件伺服器)*
- `SENDER_NAME` : 寄件人名稱。
**例如:**
![](https://pic.rmb.bdstatic.com/bjh/63e04bdd3d62995ede4e4d401530479b.png)
2. 設定完環境變數,必須**重新部署**,郵件提醒功能才會生效
3. 新增使用者
**儲存** —— **使用者** —— **新增使用者**
可能會有一點延遲, 耐心等待一會
4. leanCloud自動喚醒
1. 由於leanCloud的休眠策略, 評論可能沒有郵件通知(畢竟是白嫖)
2. 首先需要新增環境變數,`ADMIN_URL : 雲引擎域名`,如:https://jackma.avosapps.us(重啟生效)
3. 然後點選【雲引擎】【定時任務】【建立定時任務】,按照圖片上填寫:`0 0/20 7-23 * * ?`
![](https://pic.rmb.bdstatic.com/bjh/baf59f6fd9d049aa9d3552904d06c669.png)
5. 登入之前的管理平臺地址即可管理評論 lean.limeichao.cn 這個東東
![](https://pic.rmb.bdstatic.com/bjh/35efbfa4392cd1b28b3f9ca3c5956a69.png)
## 自動喚醒失敗問題
免費版的 LeanCloud 容器,是有強制性休眠策略的,不能 24 小時執行:
- 每天必須休眠 6 個小時
- 30 分鐘內沒有外部請求,則休眠。
- 休眠後如果有新的外部請求例項則馬上啟動(但啟用時此次傳送郵件會失敗)
- Valine-admin由於Leancloud流控原因,自動喚醒任務可能會失敗, 所以這裡介紹一個使用第三方計劃任務網站進行定時喚醒 Valine-admin 的方法。
### 註冊 cron-job 帳號
註冊地址:https://cron-job.org/en/signup/
> 註冊時的時區請選擇 `Asia/Shanghai`
### 新增一個計劃任務
1. 登陸之後依次點選 `Members`,`cronjobs`,`Create cronjob`
2. Title, Address
- Title 可以隨便填一個
- Address 填寫你的雲引擎環境變數的 ADMIN_URL,也就是Leancloud的Web 主機域名。
3. Schedule
選擇 User-defined 進行自定義設定(按住 Ctrl 可多選)
- Days of month: 全選
- Days of week: 全選
- Months: 全選
- Hours: 你需要在哪個時間段喚醒就選擇什麼
- Minutes: 選擇 0 , 20 , 40
4. Notifications
可以不用修改,也可以根據自己的需要修改
5. Common
勾選Save responses, 儲存喚醒日誌
6. 點選Create cronjob
**有不懂的地方請評論區留言哦**