以初學者的角度,來看待電腦教學這回事。

標籤: wordpress Page 1 of 2

如何阻擋WordPress的「垃圾留言」?

維護一個WordPress網站,「垃圾留言(Spam)」想必是一個很困擾,甚至是深惡痛絕的問題。

因為原始的WordPress留言系統,只要亂填資料,就可以直接留言,所以如果沒有對預設的留言系統做處置,我想每天成千上百的垃圾留言,一定是家常便飯,光是手動過濾這些垃圾留言,就會耗掉你所有的時間。

所以才會有「Akismet Spam Protection」的外掛產生,如下圖:

只有使用這個外掛才能有效的過濾大量的垃圾留言,而這個外掛在最早以前,是免費讓人註冊使用的,如果你沒有在早期就申請,現在想要使用它的話,就要每年或每月付費使用,費用可以查詢「Akismet官網」。

我之前也是有一直在付費使用,但用個幾年總是會想要找一些替代的方法,看看能不能把這筆花費省下來,後來我使用這兩個方式,把每天需要審核的垃圾留言,減少到個位數。

方式一、安裝Jetpack

Jetpack這個外掛程式,雖然是個龐大的外掛程式,如下圖:

但如果你有安裝,或是也建議你安裝,在安裝之後,可以開啟「討論」中的「留言」功能,讓使用者能透過WordPress、Facebook、Twitter帳號來進行留言。

開啟之後,就不是簡單輸入一些假資料,就能留言,所以能減少很多垃圾留言了。

但光是這樣,其實還不夠,因為要是原本的垃圾留言有1000則,透過Jetpack幫你過濾了900則,光是漏網之魚的100則,也夠你受的了。

所以可以再透過接下來的方式二,進行二次過濾。

方式二、禁止使用的留言關鍵字

透過WordPress本身內建的「禁止使用的留言關鍵字」功能。

這個功能在「設定」\「討論」中的「禁止使用的留言關鍵字」如下圖:

我們可以設定「關鍵字」或者「IP位址」,我個人覺得以手動的方式來維護的清單,設定IP單名單有點緩不濟急,因為等到你把對方的IP位址填上,人家早就換IP了。

但設定關鍵字就是一個很不錯的方式,我們可以從那些垃圾留言中,篩選出一些常用的關鍵字,這樣之後有相同關鍵字的留言,就會直接進入「回收桶」,非常的省事。

以下是我目前所整理的一些關鍵字,大家可以直接複製貼上到自己的WordPress設定中,這些關鍵字你可以自己做增減,如下:

post
coupon
publish
content
escort
article
subject
appreciate
lottery
draw
gambling
casino
porn
price
visit
bonus
wonderful
fantastic
excellent
thankful
delighted
beautiful
amazing
pleasure
veritably
happy
mod
awesome
similar
appearance
You
booter
stresser
fact
sex
wish
considerate
Great
strength
doll
buy


à

ä
ê
ế
ğ
ö
ş
ç
ü
ซิ
เร

มั



มี
ปั

以我的部落格來說,幾乎沒有人會用英文留言,所以就有針對許多英文單字來做阻擋,所以你可以隨時根據你所接觸到的垃圾留言,隨時來新增關鍵字,讓WordPress阻擋垃圾留言的功能更加的完善。

解決WordPress外掛Disqus留言系統不能同步(Syncing)的問題

Disqus」是一個可以取代網站原有的留言系統,因為美觀、功能強及使用方便,所以早期吸引不少人使用,如下圖:

但後來因為使用免費版的會被強制放廣告,所以有不少人就不再使用了,但因為Disqus的留言系統也還不錯,所以我有一個別的網站,都是每個月付12美金持續的使用中。

同步(Syncing)功能無法使用

而在WordPress的Disqus外掛頁面,有個「同步(Sync)」功能,如下圖:

以WordPress來說,這個功能是用來把使用者輸入到Disqus的留言,同步到WordPress原本的留言系統中,但很奇怪的是,只要一按下「Enable Auto Syncing」,就會出現「Error attempting to enable syncing」錯誤訊息。

而且想要使用「Manually Sync Comments」時,每次只要同步一小段時間之後,就會停止下來,這個問題國外也有許多人有發生過:

Manually Sync Comments never ends

Disqus匯出(Export)的XML檔案

再來,Disqus也還有一個備份匯出的功能,可以把目前在Disqus上的所有資料,匯出到一個XML檔,但很奇怪的是,每次我要解壓縮這個被gz壓縮好的xml檔案時,都會出現一個「invalid compressed data–format violated」錯誤訊息,看起來檔案好像有損壞掉,但檔案又好像可以開。

此外,Disqus雖然可以匯出XML檔案,但官方說這檔案只供「備份」用途使用,既無法匯到Disqus的系統,也無法再匯回WordPress裡,所以就等於你想要使用的話,還要再寫一個Parser程式,來解析這個備份的XML檔案…,有夠麻煩的。

The nightmare that is Disqus export, and import into WordPress

總之,有好多隱憂在,雖然現在仍然持續使用付費的服務,但就怕哪天Disqus會突然宣佈要停止服務,所以現階段,就一定要趕快解決這個備份的問題,要不然用起來真的不安心啊。

解決方案

要根本解決這個問題,就是要把Disqus在WordPress的Sync的外掛功能搞定,目前Disqus for WordPress的最新版是3.0.22 版,總覺得我該開啟、該設定的都弄了,搞了非常久,但後來「Auto Syncing」的功能忽然可以開啟了…

我不確定是哪邊解決了,只記得是在開啟「Single Sign-on (SSO)」之後,還有我還安裝了「WP Data Access」、「Delete All Comments of wordpress」這兩個外掛之後,功能才正常。

但Auto Syncing只是針對新增的留言會同步,對於之前的舊留言,並沒有做處理,想要處理的話,還是得用「Manually Sync Comments」來同步舊有的留言,但這個功能在同步一小段時間之後,還是都會中斷。

所以這邊大概就是只能利用匯出的XML檔案,也就是把Disqus自訂義的XML,轉換成WordPress可以接受的格式,所以我就在網路上尋找,看有沒有人已經寫好外掛可以做這個事,但找到的都是舊的程式,這些所有的工具,不是下載不到,就是已經不能使用了。

所以非得自己寫程式了嗎?就抱著這個問題去睡覺了,因為已經凌晨三點多了。

問題迎刃而解

隔天起床,我利用「VMware Workstation Player」,重新架設了一台Web Server(關於架站,你可以參考這篇文章「如何架出安全性較高的網站?」來學架站),然後將我的網站設定在這個測試的Server上面,如下圖:

那時忽然想到,其實Disqus這個備份功能,以前好像是好的,所以就去找了以前網站的備份,幸好,我還有以前Disqus的2.85版,所以我就把新版的刪除,換回舊版的,如下圖:

剛放上去之後,去按下〔Sync Comments〕時,還是會卡住,但我後來把「Disable automated comment importing」給打勾之後,再重新按下〔Sync Comments〕時,就能開始成功能同步了,如下圖:

第一次完整同步時,可以勾選「Remove all imported Disqus comments before syncing.」,在同步前,先把舊的留言都移除,再開始同步。

在留言同步完成之後,我再把測試用Server的MySQL資料庫匯出,然後再把匯出的資料庫,再匯入原本的資料庫中,最後再把新版Disqus外掛的「Enable Auto Syncing」打開,就完全解決備份新舊留言這個問題了,感動…

以下提供

Disqus Comment System 2.85版下載

GCP教學:使用FTP上傳WordPress檔案

萬事俱備,只欠東風

在一連串的教學,從「新增VM執行個體」、「使用SSH架設ZPANEL網站架設平台」、「設定ZPANEL及GCP防火牆規則」之後,我們完成了「Google Cloud Platform」及ZPanel的設定,最後,我們就是要上傳我們的主角,也就是WordPress網頁。

Step 1. 要下載WordPress,可以到「WordPress Taiwan正體中文」的網站下載,來到這個網頁,然後點擊〔下載WordPress 4.8〕,因為WordPress持續在改版,所以你看到的版本,一定會比4.8版還要新,如下圖:

Step 2. 在下載WordPress之後,因為這個檔案是個壓縮檔,所以請解壓縮之後,再將整個資料夾的檔案屬性,將「唯讀」給取消掉,然後套用到所有的檔案及資料夾中,如下圖:

Step 3. 接著,來到wordpress的資料夾中,將「wp-config-sample.php」檔名改為「wp-config.php」,如下圖:

Step 4. 使用「記事本」程式開啟「wp-config.php」這個設定檔案,然後設定好「DB_NAME」(資料庫名稱)、「DB_USER」(資料庫使用者)及「DB_PASSWORD」(資料庫密碼),如下圖:

以上這些資訊,都是在設定ZPanel時所產生的,如果不清楚的話,可以去參考上一篇文章。

Step 5. 接著我們要使用「FileZilla」這個常見的FTP免費軟體,請在軟體中新增一個站台,輸入主機名稱及登入資訊,這些資訊也都是在上一篇文章中所產生的,如有不清楚,可以回到上一篇文章,再去看一下。

若有不懂FTP軟體的,則可以參考這篇文章「免費FTP軟體「FileZilla」的上傳及下載教學,上班族必學!!」。

Step 6. 而在新增FTP站台時有一點要特別注意,就是要再到「傳輸設定」中,將「傳輸模式」改為「主動模式」,如下圖:

Step 7. 接著應該就可以順利登入FTP,在上傳WordPress檔案之前,有件事情非常的重要,就是要先把預設的網頁檔案「_cgi-bin、_errorpages、index.html」先刪除掉,如下圖:

Step 8. 最後最後,我們要再新增一組DNS紀錄,請到你申請網域的網站,新增一筆A紀錄,以我的網域「mrtang.tw」來說,「名稱」設定為blog,然後再填入IP位址就可以了,如下圖:

Step 9. 經過DNS的設定,我們就能使用「blog.mrtang.tw」來進入我們所安裝好的部落格了,但通常設定好DNS之後,快的話要等待幾分鐘,久的話甚至要到24小時,如果要快的話,可以先在hosts先設定好IP及網域的對應,就可以先測試一下網站是否正常。

設定方式可以參考「Windows hosts檔的用途?為何檔案編輯後無法儲存?」這篇文章。

Google Cloud Platform文章整理

初次使用:

自動架站教學:

手動架站教學:

延伸閱讀:

2022/04/21 補充

架站多年的經驗談,架一個網站真的很簡單,搜尋一下,就會有什麼10分鐘架站…等等的教學,可見架網站真的不難,但難的是架一個「高效能」且「穩定又安全」的網站,而且不僅如此,網站架好之後,不是之後就沒事了,日後的維護也相當的重要。

因此後來,我再寫了一篇文章,如下:

如何架出安全性較高的網站?

大家可以參考看看我近年來架站的經歷及感想,以及後來我是怎麼找到教學,然後自架一個很穩定的網站。

Page 1 of 2

Powered by WordPress & Theme by Anders Norén