Yslow cookie-free 實用到ecshop中把商品圖片分離到子域名以加速頁面顯示的方法

YSlow給如何提升網頁效率和優化網站性能提供了22條建議,其中有一條是關於域名的:Use cookie-free domains。php

使用 cookie-free domains 有什麼好處呢?當用戶瀏覽器發送一個靜態文件,如圖片image、CSS樣式表文件時會同時發送同一個域名(或二級域名)下的cookies,可是網站服務器對發送過來的cookies徹底不予理會,所以這些沒用的cookies白白浪費了網站帶寬,影響網站加載速度和網頁性能表現。YSlow建議爲了解決這個問題,就能夠經過使用 cookie-free domains 的方法來作優化,從而提升網頁效率。瀏覽器

在使用ecshop作商店時,大量的圖片是避免不了的。爲了解決同域下瀏覽器下載的線程的限制,咱們有必要把ecshop裏上傳的圖片分離到另外一個域名下。當前我採用產品ID的最後一個小數除以2取整來劃分不一樣的子域來,這樣在頁面被瀏覽時加載圖片能夠更多同步線程下載到瀏覽器端以加速顯示。服務器


下面是我修改ecshop的方法:cookie

在/includes/lib_common.php中大約2774行,找到下面代碼,增長紅色部位便可。dom


/**性能

 * 從新得到商品圖片與商品相冊的地址優化

 *網站

 * @param int $goods_id 商品IDurl

 * @param string $image 原商品相冊圖片地址spa

 * @param boolean $thumb 是否爲縮略圖

 * @param string $call 調用方法(商品圖片仍是商品相冊)

 * @param boolean $del 是否刪除圖片

 *

 * @return  string   $url

 */

function get_image_path($goods_id, $image='', $thumb=false, $call='goods', $del=false){

    $url = empty($image) ? $GLOBALS['_CFG']['no_picture'] : $image;

    $url = str_replace('images/','http://pic'.floor(substr($goods_id,-1)/2).'.digicake.cn/',$url); //Paul增長的

    return $url;

}

相關文章
相關標籤/搜索