WordPress網(wǎng)站優(yōu)化加速一直都是廣大站長(zhǎng)比較關(guān)注的問題,今天主要介紹一下基于七牛云的靜態(tài)文件(比如圖片、js、css)CDN加速的設(shè)置方法。
CDN還是對(duì)象儲(chǔ)存?
目前我們接觸到的很多客戶都是基于第三方插件對(duì)接的對(duì)象存儲(chǔ)
服務(wù),這個(gè)本身其實(shí)也是沒什么問題的,不過接觸下來發(fā)現(xiàn)很多用戶經(jīng)常會(huì)遇到插件選擇、文件同步、縮略圖生成等各種問題,所以我們更推薦的是CDN
回源加速的方法。
兩者的區(qū)別如下:
對(duì)象存儲(chǔ)
是將所有靜態(tài)圖片存儲(chǔ)到第三方服務(wù)商,本地甚至可以不保存?zhèn)浞菸募?,但是需要將文件同步到第三方平臺(tái),所以對(duì)接成本較高,不過好在插件可以幫你完成這部分工作;CDN
則是將文件依然保存在自己服務(wù)器上,需要用到的時(shí)候再?gòu)淖约悍?wù)器上抓取緩存到CDN節(jié)點(diǎn),配置的話就簡(jiǎn)單了,只需要設(shè)置好服務(wù)器的IP地址和回源host即可,甚至都不需要多安裝插件;
可以看出來,主要區(qū)別是文件保存在哪里以及配置成本,如果對(duì)于大一點(diǎn)或者文件比較多的站點(diǎn),那么使用對(duì)象存儲(chǔ)可以減少運(yùn)維成本(不需要考慮多臺(tái)服務(wù)器的文件同步;網(wǎng)站遷移的話文件也會(huì)很龐大),但是對(duì)于中小型的網(wǎng)站的話,本身服務(wù)器硬盤保存這么點(diǎn)圖片肯定是沒什么壓力的,直接使用CDN回源的方式會(huì)更方便快捷,減少很多運(yùn)維成本以及對(duì)象存儲(chǔ)的使用花費(fèi)。
七牛云CDN如何配置?
添加融合 CDN 加速
在七牛云網(wǎng)站后臺(tái)(還沒有注冊(cè)七牛云可以點(diǎn)擊此處)創(chuàng)建融合CDN
,根據(jù)頁面提示配置即可,這里主要說下源站配置
和緩存配置
選項(xiàng)。
源站配置
源站配置一般會(huì)選擇源站域名
或者IP 地址
選項(xiàng),其中源站域名最簡(jiǎn)單,直接填寫網(wǎng)站域名,回源 HOST
也是填寫網(wǎng)站域名,不過使用這個(gè)方法后可以直接用CDN域名訪問整個(gè)網(wǎng)站的頁面,這會(huì)導(dǎo)致CDN二級(jí)域名的頁面也被收錄,這種做法對(duì)優(yōu)化并不是很好,所以推薦使用IP 地址
。
IP地址
的設(shè)置方法,如圖:
這里有一個(gè)源站測(cè)試
,會(huì)測(cè)試配置是否正確的,所以需要在測(cè)試之前完成服務(wù)器的CDN域名綁定操作,這個(gè)操作和之前綁定網(wǎng)站主域名是一樣的,只不過需要注意的是CDN域名綁定的網(wǎng)站目錄需要和主域名目錄一樣,或者也可以直接在原有配置里面增加綁定一個(gè)CDN域名
。
這個(gè)時(shí)候還不需要解析域名,只需要服務(wù)器端綁定
綁定完成以后,就可以點(diǎn)擊下面的源站測(cè)試
,如果配置沒問題的話是可以通過的。
緩存配置
緩存配置的話如果不清楚的話建議直接使用默認(rèn)
的30天即可,主要是提醒一下忽略URL參數(shù)
建議設(shè)置為關(guān)閉,如果開啟的話會(huì)導(dǎo)致主題、插件更新后緩存無法立即清除,可能會(huì)影響到網(wǎng)站的正常訪問。
域名解析 配置創(chuàng)建好了以后就是域名解析了,七牛會(huì)提供一個(gè)cname解析地址,如圖:
只需要在域名dns解析里面cname解析到指定的地址即可。
WordPress的設(shè)置
CDN創(chuàng)建解析完成以后,接下來只需要替換網(wǎng)站里面的靜態(tài)文件地址即可,這個(gè)操作其實(shí)是可以基于已有的緩存插件來實(shí)現(xiàn),不需要另外安裝插件,下面介紹一下常用的緩存插件配置方法。
WP Super Cache 插件
WP Fastest Cache 插件,上面是CDN地址,下面是原地址
W3 Total Cache 插件
先開啟CDN,選擇Generic Mirror
然后進(jìn)入CDN設(shè)置里面設(shè)置CDN域名
更多插件的話大家可以自己找下,一般都是有的。
禁止收錄CDN域名頁面
這樣配置以后,就基本上完成了CDN配置了,不過上面說過,不使用源站域名就是為了解決CDN域名收錄的問題,那么使用IP地址是如何解決這個(gè)問題呢?
因?yàn)槭褂肐P地址的話,還是需要在服務(wù)器綁定CDN域名,并且在訪問上也是直接使用CDN域名的,所以只需要在wordpress配置文件wp-config.php
里面禁止CDN域名即可。
找到網(wǎng)站根目錄下面的wp-config.php
文件,編輯文件在define('WP_DEBUG', false);后面加入以下代碼:
if( $_SERVER['HTTP_HOST'] == '替換成CDN域名' ) {
header("HTTP/1.1 404 Not Found");
exit;
}
這樣以后使用CDN地址只能訪問網(wǎng)站的靜態(tài)文件了,其他wordpress的頁面就無法訪問了