手動清除cloudflare 快取

因為網站DNS使用的是cloudflare服務,最近在撰寫網站程式時,常常會因為cloudflare的快取機制,造成無法即時看出更改的結果,雖然有developer mode,但感覺還是有時間落差,最近在國外網站上看到可以手動清除快取,因此記錄下來分享給有需要的朋友。

取得Zone ID

進入CloudFlare後台,並在「Overview」的選項右下角API下方,會看到ZoneID,並將裡面的文字複製起來。

接著再點右上角的會員圖示,選擇「MyProfile」 , 點選上方Tab:API Token標籤後,再點Global API Key後方的View鈕,再次輸入密碼就可取得。

安裝curl

請在系統上安裝curl程式,或使用postman(windows上)工具都可。 把下方紅色的ZoneID、Email、Glocal API Key,更改成對應的文字,並貼到終端機中,按下Enter,當清除成功時,會出現Access的文字。

curl -X DELETE "https://api.cloudflare.com/client/v4/zones/ZoneID/purge_cache" \
-H "X-Auth-Email: Email" \
-H "X-Auth-Key: Global API Key" \
-H "Content-Type:application/json" \
–data '{"purge_everything":true}'

錯誤訊息

{"success":false,"errors":[{"code":1012,"message":"Request must contain one of \"purge_everything\", \"files\", \"tags\", or \"hosts\""}],"messages":[],"result":null}curl: (6) Could not resolve host: xn--data-z86a; Unknown error