云函數(shù)自動續(xù)訂freenom域名
緣起
互聯(lián)網(wǎng)時代,每個極客都應(yīng)該擁有自己的站子或者會部署一些應(yīng)用在服務(wù)器上,這就需要域名來方便訪問各自的應(yīng)用,對于比較重要的首選是花錢購買域名,對于一些不是太重要的服務(wù),免費的域名也就夠用了。免費域名里最有名的當屬freenom了,但是freenom的免費域名最長的有效時間是一年,到期要是忘了續(xù)就沒了,要重新申領(lǐng)一個,還是比較麻煩,雖然在到期前會有郵件提示,不過很容易忽略,于是乎干脆部署一個自動續(xù)費服務(wù)。
折騰
在github上搜索了一番,發(fā)現(xiàn)了luolongfei/freenom這個項目挺適合,于是就跟著教程部署了下來。這個項目部署方式還是很多的,不過運行網(wǎng)絡(luò)環(huán)境最好選在國外,所以用云函數(shù)的方式比較方便。
首先我們來注冊云函數(shù),之前騰訊云函數(shù)是相當?shù)暮糜茫贿^它后面收費了,為了避免麻煩還是用其他的。我這里選擇華為云函數(shù)來部署,注冊過程就不做詳細描述,百度找到官網(wǎng)用手機號注冊并實名后就可以使用了。
回到github,我們找到項目readme里面的“通過各種云函數(shù)部署”子項,點擊圖示的下載鏈接,把需要的壓縮包下載下來。在這里也可以參考官方的部署教程部署,不過華為云函數(shù)界面稍有改變,與官方教程稍有不同。
來到華為云控制臺的界面,在左上角服務(wù)列表里找到云函數(shù),點進去。然后再點右上角“創(chuàng)建函數(shù)”,來到創(chuàng)建云函數(shù)的界面。
在創(chuàng)建頁面,如圖示在“創(chuàng)建空白函數(shù)”選項卡里,區(qū)域選擇香港之類的國外區(qū)域,函數(shù)名稱隨意,運行時下面的框里選擇PHP7.3,然后點擊右下角的“創(chuàng)建函數(shù)”。
創(chuàng)建完函數(shù)后來到建好的函數(shù)頁面,如圖示,點擊代碼源欄目右側(cè)的“上傳自”選項,選擇“zip 文件”將剛才下載好的壓縮文件上傳上來。
上傳完后稍等一會兒,就可以在代碼框內(nèi)看到更新的代碼了。
我們切換到代碼選項旁的設(shè)置選項,還需要設(shè)置下環(huán)境變量等參數(shù)。
如圖示,首先修改下“函數(shù)執(zhí)行入口”,改為“index.huawei_handler”,超時設(shè)為60秒即可,內(nèi)存設(shè)為128mb足矣。設(shè)置好后點擊保存。
然后在“觸發(fā)器”選項里面創(chuàng)建一個觸發(fā)器來觸發(fā)函數(shù)運行。點擊右上角的“創(chuàng)建觸發(fā)器”,如圖示,觸發(fā)器類型選擇“定時觸發(fā)器”;定時器名稱隨意;觸發(fā)規(guī)則選“cron表達式”,表達式設(shè)置方法可以參考我之前寫過的一篇文章,這里我填的“0 0 8 * * 2”每周二八點鐘觸發(fā)。確認無誤后點擊“確定”即可。
然后來到“環(huán)境變量”欄目,點擊右上角的“添加環(huán)境變量”,如圖示依次添加“FREENOM_USERNAME”——freenom用戶名;“FREENOM_PASSWORD”——freenom密碼;“WECHAT_CORP_ID”——微信企業(yè)ID;“WECHAT_AGENT_ID”——微信AgentId;“WECHAT_CORP_SECRET”——微信Secret值;“WECHAT_ENABLE”——微信通知使能;六個變量,其中前兩個用戶名和密碼是必須的,后面的變量是通知應(yīng)用的,有多種通知方式,參考官方文檔部署即可,建議選擇微信通知方式比較方便。
設(shè)置好后,在代碼頁面點一下“測試”按鈕,如果收到通知或者查看日志成功了就部署好了。
總結(jié)
部署好自動續(xù)期后就不用擔心域名過期了。