空間在國外,域名沒有 BA 號,想要加快網站的訪問速度,一個方法就是使用香港或者日本機房的伺服器,國內訪問這兩個地方的空間相對於美國來說還是挺快的,要是願意花錢購買更穩定的頻寬和線路,網站訪問的速度還是有可能趕上上國內的主機速度。

另一個方法就是給網站使用 CDN 加速,國外有很多的免費 CDN 服務,可惜 CDN 加速效果並不好,甚至還有可能讓網站速度變得更慢。雖然國內近年來也出現了 360 CDN 、百度 CDN 、加速樂等免費的 CDN 服務,不過可惜的是隻有 BA 號的網站才能正常使用 CDN 。

一個折衷的辦法就是不給網站做全站 CDN 加速,而是給網站的 JS 、 CSS 、圖片、論壇附件等靜態檔案進行 CDN 加速。實際測試結果顯示,這樣做 CDN 加速效果還是有的,尤其是對於一些圖片和附件比較多的網站,加速訪問的效果還是很明顯的。

之前部落已經分享過了 WordPress 使用七牛、又拍免費 CDN 進行加速的方法,本篇文章就來分享一下 Discuz 論壇使用七牛、又拍、阿里雲 OSS 免費 CDN 加速方法。

Discuz論壇使用七牛, 又拍, 阿里雲OSS CDN加速:CSS,JS, 圖片, 論壇附件

一、申請和開通七牛 CDN

1 、進入到七牛 CDN 管理後臺,新建一個空間。

Discuz論壇新建一個空間

2 、然後在映象儲存中設定好映象源。

Discuz論壇設定好映象源

3 、在賬號管理中可以看到金鑰 Access 和 SecretKey 。

Discuz論壇檢視金鑰

§

二、 Discuz 論壇使用七牛 CDN 加速 JS 、 CSS 、圖片等靜態檔案

1 、進入到管理中心-> 全域性-> 上傳設定的基本設定,本地附件 URL 地址填寫你七牛相關空間的 http://域名+/data/attachment 。

Discuz論壇上傳基本設定

2 、然後進入到 Discuz 論壇的 「全域性」-「伺服器最佳化」 。

Discuz論壇伺服器最佳化

3 、在 JS 檔案 URL 和 CSS 檔案 URL 選擇 「自定義 URL」,URL 上填寫你七牛相關空間的 http://域名+/static/js/,如果你的 JS 和 CSS 檔案放在別的子目錄中,可以參照路徑進行修改。

Discuz論壇自定義URL

4 、更新 Discuz 論壇快取,開啟 Discuz 論壇,這時就能看到 JS 、 CSS 等靜態檔案已經替換成了七牛的 CDN 地址了。

Discuz論壇成功替換URL

5 、原來 Discuz 論壇上的圖片等都已經變成了七牛的連線了。

Discuz論壇圖片連結

§

三、 Discuz 論壇使用七牛、又拍、阿里雲 OSS 儲存並加速附件

1 、上面我們透過建立七牛映象空間實現了 Discuz 論壇 JS 、 CSS 、圖片等無縫 CDN 加速,可能有的朋友想要把論壇的附件存放在七牛、又拍、阿里雲 OSS 並實現加速。

2 、先要下載:DISCUZ X3 擴充套件框架 DXEXTEND 檔案 (適用於 3.1 和 3.2) 和 DISCUZ X2.5/3/3.1 雲端儲存通用介面檔案。

3 、將 DISCUZ X3 擴充套件框架 DXEXTEND 解壓縮並將其中的資料夾複製到 discuz 同路徑下,替換同名檔案。將 DISCUZ X2.5/3/3.1 雲端儲存通用介面檔案解壓後,將其中的資料夾複製放在根目錄中。

Discuz論壇修改配置檔案

4 、修改你的 config/config_global.php 檔案,如果是想要使用七牛作為附件儲存和加速,新增以下程式碼 (注意將 Access Key 、 Secret Key 、 attachurl 、 bucket 替換成你自己的):

  • $_config['extend']['storage']['curstorage'] = 'qiniu';
  • $_config['extend']['storage']['qiniu']['accesskey'] = '';
  • $_config['extend']['storage']['qiniu']['secretkey'] = '';
  • $_config['extend']['storage']['qiniu']['attachurl'] = 'http://';
  • $_config['extend']['storage']['qiniu']['bucket'] = '';

5 、如果使用阿里雲 OSS 作為附件儲存和加速,程式碼如下:

  • $_config['extend']['storage']['curstorage'] = 'aliyun';
  • $_config['extend']['storage']['aliyun']['access_id'] = '';
  • $_config['extend']['storage']['aliyun']['access_key'] = '';
  • $_config['extend']['storage']['aliyun']['access_host'] = NULL;
  • $_config['extend']['storage']['aliyun']['bucket'] = 'discuzbucket';
  • $_config['extend']['storage']['aliyun']['attachurl'] = 'http://discuzbucket.oss.aliyuncs.com';

6 、如果使用又拍作為附件儲存和加速,程式碼如下:

  • $_config['extend']['storage']['curstorage'] = 'upyun';
  • $_config['extend']['storage']['upyun']['bucket'] = 'Discuztest';
  • $_config['extend']['storage']['upyun']['username'] = 'Discuzuser';
  • $_config['extend']['storage']['upyun']['password'] = 'discuz';
  • $_config['extend']['storage']['upyun']['attachurl'] = 'http://Discuztest.b0.upaiyun.com';

7 、新增程式碼完成後,接下來就是在 discuz 管理中心-> 全域性-> 上傳設定-> 遠端附件 中啟用遠端附件,並將 遠端訪問 URL 設定為 http://<YOUR QINIU DOMAIN>(阿里雲和又拍同理一樣) 。

Discuz論壇遠端附件

8 、修改完成後,你在 discuz 論壇中上傳的附件就會直接上傳到七牛、又拍、阿里雲 OSS 空間上了。

Discuz論壇遠端上傳