WordPress配置騰訊云CDN并實現(xiàn)發(fā)布/更新文章孽鸡、提交/審核評論自動清理騰訊云CDN緩存

博客在CDN是加了又下蹂午,下了又加。昨天訪問張戈博客學(xué)習(xí)的時候彬碱,感嘆大牛的站優(yōu)化的就是好!驚嘆速度快之余發(fā)現(xiàn)張戈博客的服務(wù)器在國外奥洼,而且配置也不是很高巷疼。(優(yōu)化出奇跡)

網(wǎng)站速度的提升無論對用戶體驗以及對seo都是極好的。在看看我這個1h1m的小弱雞灵奖。(搖頭搖頭)

實際上網(wǎng)站的訪問速度并不是完全依賴于去給服務(wù)器堆硬件配置嚼沿,這方面就包含很多知識了。服務(wù)器地理位置距離瓷患、網(wǎng)站內(nèi)部優(yōu)化骡尽、不同運營商之間的線路解析、緩存cdn分發(fā)等等都決定著網(wǎng)站的速度擅编。當(dāng)然我們可以揚長避短攀细,取長補短。

WordPress套一層CDN提升網(wǎng)站訪問速度爱态。

cdn可以解決不同位置的文件分發(fā)問題谭贪,但我覺得優(yōu)化wordpress網(wǎng)站速度主要還是靠cdn提供的緩存功能,

通過cdn控制臺設(shè)置緩存頁面內(nèi)容锦担,用戶直接訪問到的是cdn層的緩存俭识,在結(jié)合cdn的跨區(qū)域分發(fā)。提速明顯洞渔!

為此套媚,我把博客固定鏈接結(jié)構(gòu)改成了/%post_id%.html,然后在cdn配置緩存,html頁面似乎更利于cdn緩存(這個我也不太懂磁椒,發(fā)現(xiàn)很多大佬都是這樣設(shè)置)

關(guān)于更改固定鏈接后之前的文章鏈接無法訪問堤瘤,可以參考這篇文章:wordpress更改固定鏈接后舊鏈接301跳轉(zhuǎn)當(dāng)前固定連接

wordpress更改固定鏈接后舊鏈接301跳轉(zhuǎn)當(dāng)前固定連接

博客之前用固定鏈接是/archives/%post_id% 鏈接形式:https://www.zmki.cn/archi…

正文開始:

配置騰訊云CDN

注冊騰訊云賬號開通CDN這個不多說。騰訊云CDN

開通之后開通域名衷快,新用戶還送流量包宙橱,可以根據(jù)自己的需求選擇套餐

回源配置:

由于我使用的是騰訊云的服務(wù)器,好像支持什么Range回源配置蘸拔,源站類型我選擇自主回源师郑,源站地址就填寫服務(wù)器ip。

緩存配置

主要是緩存靜態(tài)內(nèi)容调窍,緩存時間我設(shè)置的7天宝冕。

不緩存

后臺/wp-admin

登錄頁面/wp-login.php

靜態(tài)文件.php;.jsp;.asp;.aspx

其他的都設(shè)置緩存


發(fā)布/更新文章、提交/審核評論自動清理騰訊云CDN緩存

把下邊的代碼放到當(dāng)前主題functions.php中(替換代碼里的SecretId 及?$secretKey)

/* 需要填寫你的密鑰邓萨,訪問 https://console.qcloud.com/capi 獲取 SecretId 及 $secretKey */$secretKey='你的secretKey ';$secretId='你的SecretId ';//更新或發(fā)布文章清理本文和首頁CDN緩存add_action('publish_post','Clean_By_Publish',0);//提交評論更新本文CDN緩存add_action('comment_post','Clean_By_Comments',0);//評論被審核更新本文CDN緩存add_action('comment_unapproved_to_approved','Clean_By_Approved',0);//發(fā)布文章更新CDN緩存函數(shù)functionClean_By_Publish($post_ID){global$secretKey,$secretId;$url=get_permalink($post_ID);$action='RefreshCdnUrl';/*要清理的頁面地梨,默認(rèn)包含首頁和文章頁面菊卷,需要清理其他頁面請自行發(fā)揮*/$PRIVATE_PARAMS=array('urls.0'=>'https://www.zmki.cn/',/*提交首頁刷新,修改成自己的網(wǎng)站首頁*/'urls.1'=>$url,);$HttpUrl="cdn.api.qcloud.com";/*除非有特殊說明宝剖,如MultipartUploadVodFile洁闰,其它接口都支持GET及POST*/$HttpMethod="POST";/*是否https協(xié)議,大部分接口都必須為https万细,只有少部分接口除外(如MultipartUploadVodFile)*/$isHttps=true;/*下面這五個參數(shù)為所有接口的 公共參數(shù)扑眉;對于某些接口沒有地域概念,則不用傳遞Region(如DescribeDeals)*/$COMMON_PARAMS=array('Nonce'=>rand(),'Timestamp'=>time(NULL),'Action'=>$action,'SecretId'=>$secretId,);/***********************************************************************************/CreateRequest($HttpUrl,$HttpMethod,$COMMON_PARAMS,$secretKey,$PRIVATE_PARAMS,$isHttps);}//提交評論清理文章CDN函數(shù)functionClean_By_Comments($comment_id){global$secretKey,$secretId;$comment=get_comment($comment_id);$url=get_permalink($comment->comment_post_ID);$action='RefreshCdnUrl';/*參數(shù)*/$PRIVATE_PARAMS=array('urls.0'=>$url,);$HttpUrl="cdn.api.qcloud.com";/*除非有特殊說明赖钞,如MultipartUploadVodFile腰素,其它接口都支持GET及POST*/$HttpMethod="POST";/*是否https協(xié)議,大部分接口都必須為https雪营,只有少部分接口除外(如MultipartUploadVodFile)*/$isHttps=true;/*下面這五個參數(shù)為所有接口的 公共參數(shù)弓千;對于某些接口沒有地域概念,則不用傳遞Region(如DescribeDeals)*/$COMMON_PARAMS=array('Nonce'=>rand(),'Timestamp'=>time(NULL),'Action'=>$action,'SecretId'=>$secretId,);/***********************************************************************************/CreateRequest($HttpUrl,$HttpMethod,$COMMON_PARAMS,$secretKey,$PRIVATE_PARAMS,$isHttps);}//評論被審核清理CDN緩存函數(shù)functionClean_By_Approved($comment){global$secretKey,$secretId;$url=get_permalink($comment->comment_post_ID);$action='RefreshCdnUrl';/*參數(shù)*/$PRIVATE_PARAMS=array('urls.0'=>$url,);$HttpUrl="cdn.api.qcloud.com";/*除非有特殊說明献起,如MultipartUploadVodFile洋访,其它接口都支持GET及POST*/$HttpMethod="POST";/*是否https協(xié)議,大部分接口都必須為https征唬,只有少部分接口除外(如MultipartUploadVodFile)*/$isHttps=true;/*下面這五個參數(shù)為所有接口的 公共參數(shù)捌显;對于某些接口沒有地域概念,則不用傳遞Region(如DescribeDeals)*/$COMMON_PARAMS=array('Nonce'=>rand(),'Timestamp'=>time(NULL),'Action'=>$action,'SecretId'=>$secretId,);/***********************************************************************************/CreateRequest($HttpUrl,$HttpMethod,$COMMON_PARAMS,$secretKey,$PRIVATE_PARAMS,$isHttps);}//請求主函數(shù)总寒,無需改動functionCreateRequest($HttpUrl,$HttpMethod,$COMMON_PARAMS,$secretKey,$PRIVATE_PARAMS,$isHttps){$FullHttpUrl=$HttpUrl."/v2/index.php";/***************對請求參數(shù) 按參數(shù)名 做字典序升序排列扶歪,注意此排序區(qū)分大小寫*************/$ReqParaArray=array_merge($COMMON_PARAMS,$PRIVATE_PARAMS);ksort($ReqParaArray);/**********************************生成簽名原文**********************************

? ? ? ? * 將 請求方法, URI地址,及排序好的請求參數(shù)? 按照下面格式? 拼接在一起, 生成簽名原文,此請求中的原文為

? ? ? ? * GETcvm.api.qcloud.com/v2/index.php?Action=DescribeInstances&Nonce=345122&Region=gz

? ? ? ? * &SecretId=AKIDz8krbsJ5yKBZQ? ? ·1pn74WFkmLPx3gnPhESA&Timestamp=1408704141

? ? ? ? * &instanceIds.0=qcvm12345&instanceIds.1=qcvm56789

? ? ? ? * ****************************************************************************/$SigTxt=$HttpMethod.$FullHttpUrl."?";$isFirst=true;foreach($ReqParaArrayas$key=>$value){if(!$isFirst){$SigTxt=$SigTxt."&";}$isFirst=false;/*拼接簽名原文時摄闸,如果參數(shù)名稱中攜帶_善镰,需要替換成.*/if(strpos($key,'_')){$key=str_replace('_','.',$key);}$SigTxt=$SigTxt.$key."=".$value;}/*********************根據(jù)簽名原文字符串 $SigTxt,生成簽名 Signature******************/$Signature=base64_encode(hash_hmac('sha1',$SigTxt,$secretKey,true));/***************拼接請求串,對于請求參數(shù)及簽名年枕,需要進(jìn)行urlencode編碼********************/$Req="Signature=".urlencode($Signature);foreach($ReqParaArrayas$key=>$value){$Req=$Req."&".$key."=".urlencode($value);}/*********************************發(fā)送請求********************************/if($HttpMethod==='GET'){if($isHttps===true){$Req="https://".$FullHttpUrl."?".$Req;}else{$Req="https://".$FullHttpUrl."?".$Req;}$Rsp=file_get_contents($Req);}else{if($isHttps===true){$Rsp=SendPost("https://".$FullHttpUrl,$Req,$isHttps);}else{$Rsp=SendPost("https://".$FullHttpUrl,$Req,$isHttps);}}//var_export(json_decode($Rsp,true));returnjson_decode($Rsp,true);}functionSendPost($FullHttpUrl,$Req,$isHttps){$ch=curl_init();curl_setopt($ch,CURLOPT_POST,1);curl_setopt($ch,CURLOPT_POSTFIELDS,$Req);curl_setopt($ch,CURLOPT_URL,$FullHttpUrl);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_TIMEOUT,1);if($isHttps===true){curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false);}$result=curl_exec($ch);return$result;}//騰訊云cdn緩存刷新配置結(jié)束


API密匙獲褥牌邸:https://console.qcloud.com/capi

在CDN控制臺能查到緩存刷新記錄這說明配置成功

ps.經(jīng)博主測試,PHP7.3不能提交熏兄, PHP7.2及以下的版本可以使用品洛。如果不能提交請切換PHP版本

代碼源自張戈博客,鉆芒修改(原代碼報錯)


原創(chuàng)文章摩桶,如若轉(zhuǎn)載桥状,請注明出處:《WordPress配置騰訊云CDN并實現(xiàn)發(fā)布/更新文章、提交/審核評論自動清理騰訊云CDN緩存》https://www.zmki.cn/3506.html

文章源自?鉆芒博客? ??https://www.zmki.cn/3506.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末硝清,一起剝皮案震驚了整個濱河市辅斟,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌芦拿,老刑警劉巖士飒,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件查邢,死亡現(xiàn)場離奇詭異,居然都是意外死亡酵幕,警方通過查閱死者的電腦和手機扰藕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來裙盾,“玉大人实胸,你說我怎么就攤上這事》伲” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵钢属,是天一觀的道長徘熔。 經(jīng)常有香客問我,道長淆党,這世上最難降的妖魔是什么酷师? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮染乌,結(jié)果婚禮上山孔,老公的妹妹穿的比我還像新娘。我一直安慰自己荷憋,他們只是感情好台颠,可當(dāng)我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著勒庄,像睡著了一般串前。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上实蔽,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天荡碾,我揣著相機與錄音,去河邊找鬼局装。 笑死坛吁,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的铐尚。 我是一名探鬼主播拨脉,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼塑径!你這毒婦竟也來了女坑?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤统舀,失蹤者是張志新(化名)和其女友劉穎匆骗,沒想到半個月后劳景,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡碉就,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年盟广,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瓮钥。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡筋量,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出碉熄,到底是詐尸還是另有隱情桨武,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布锈津,位于F島的核電站呀酸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏琼梆。R本人自食惡果不足惜性誉,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望茎杂。 院中可真熱鬧错览,春花似錦、人聲如沸煌往。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽携冤。三九已至悼粮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間曾棕,已是汗流浹背扣猫。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留翘地,地道東北人申尤。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像衙耕,于是被迫代替她去往敵國和親昧穿。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容