国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 網(wǎng)站 > 建站經(jīng)驗(yàn) > 正文

Drupal的模塊高級(jí)應(yīng)用之Authcache-動(dòng)態(tài)加載內(nèi)容教程

2024-08-30 19:06:43
字體:
供稿:網(wǎng)友

網(wǎng)站為了提高性能,一般會(huì)采用緩存,Drupal中可以實(shí)現(xiàn)游客緩存,如果裝上Authcache模塊可以加速用戶登錄響應(yīng),對不同的role進(jìn)行動(dòng)態(tài)加載緩存,以下是教程詳細(xì)過程.

本文講一下如果通過修改authcache的核心代碼,來實(shí)現(xiàn)緩存頁面的個(gè)性化內(nèi)容,通用的緩存,或多或少都是要進(jìn)行個(gè)性化處理的,比如用戶名顯示、動(dòng)態(tài)加載用戶資料、用戶好友等等.

一般情況下,這種局部個(gè)性化,都是通過兩種手段實(shí)現(xiàn):一個(gè)是SSI,另一個(gè)是CSI.

Authcache本身可以實(shí)現(xiàn)局部personalization,模塊叫p13n.

Authcache的ajax模塊屬于CSI,ESI模塊應(yīng)該是屬于SSI,但是由于ESI模塊需要搭建varnish服務(wù)器,配置VCL,加上服務(wù)器的設(shè)置問題,會(huì)導(dǎo)致ESI容易出錯(cuò),并且本身ESI傳遞cookie也會(huì)有些問題,因此ESI實(shí)際上實(shí)現(xiàn)起來相當(dāng)復(fù)雜.

所以,如果我們要使用服務(wù)器端的personalization,通過PHP修改根據(jù)某些條件修改某些內(nèi)容的話,需要hack一些authcache的代碼.

1.autcache.module文件

找到下面一句,Line 188

// Invoke cache backends and serve page.

修改成如下代碼:

  1. // Invoke cache backends and serve page. 
  2.  if (authcache_page_is_cacheable()) { 
  3.    $cache = authcache_backend_cache_save(); 
  4.    authcache_serve_page_from_cache($cache, authcache_key()); 
  5.  } 
  6.  else { 
  7.    ////process html result 
  8.    global $conf
  9.    $conf['page_compression'] = FALSE; 
  10.  
  11.    $cache = new stdClass(); 
  12.  
  13.    ////process html result 
  14.    $cache->data['body'] = ob_get_contents(); 
  15.    ob_clean(); 
  16.  
  17.    foreach (variable_get('authcache_page_process'array()) as $include) {  //開源軟件:Vevb.com 
  18.      require_once DRUPAL_ROOT . '/' . $include
  19.    } 
  20.    foreach (variable_get('authcache_page_process_interface'array()) as $process) { 
  21.      require_once DRUPAL_ROOT . '/' . $include
  22.      if (is_callable($process)) { 
  23.        $process($cache); 
  24.      } 
  25.    } 
  26.    echo $cache->data['body']; 
  27.  } 
  28.  exit

其中,主要是加了else后面的處理代碼.

2.authcache.cache.inc文件,從85行開始,到函數(shù)結(jié)尾,修改成如下格式.

  1. $return_compressed = FALSE; ///NEW //Don't send compressed content 
  2.  
  3. if ($page_compression) { 
  4.   header('Vary: Accept-Encoding', FALSE); 
  5.   // If page_compression is enabled, the cache contains gzipped data. 
  6.   if ($return_compressed) { 
  7.     // $cache->data['body'] is already gzip'ed, so make sure 
  8.     // zlib.output_compression does not compress it once more. 
  9.     ini_set('zlib.output_compression''0'); 
  10.     header('Content-Encoding: gzip'); 
  11.   } 
  12.   else { 
  13.     // The client does not support compression, so unzip the data in the 
  14.     // cache. Strip the gzip header and run uncompress. 
  15.     $cache->data['body'] = gzinflate(substr(substr($cache->data['body'], 10), 0, -8)); 
  16.   } 
  17.  
  18. ///NEW 
  19. foreach (variable_get('authcache_page_process'array()) as $include) { 
  20.   require_once DRUPAL_ROOT . '/' . $include
  21. foreach (variable_get('authcache_page_process_interface'array()) as $process) { 
  22.   if (is_callable($process)) { 
  23.     $process($cache); 
  24.   } 

注意:有兩個(gè)地方,///NEW 標(biāo)注,表示新加的內(nèi)容,中間有一段是原有的code.

改完之后,我們就完工了.

如何使用呢?新建一個(gè)文件,比如在custom模塊下面,叫custom_authcache.inc,黏貼如下代碼:

  1. <?php 
  2. /** 
  3. Add the following lines to settings.php 
  4.  
  5. $conf['authcache_page_process'][] = 'sites/all/modules/custom/custom/custom_authcache.inc'; 
  6. $conf['authcache_page_process_interface'][] = 'custom_authcache_common_process'; 
  7.  
  8. If you want to add more process interface, add your function name as an item in this array, $conf['authcache_page_process_interface']. 
  9. If you want to include file, please add file name to this array, $conf['authcache_page_process'] 
  10.  
  11. Core Changes: 
  12. modules/authcache/authcache.cache.inc 
  13. modules/authcache/authcache.module 
  14. **/ 
  15.  
  16. /* 
  17. * Process authcache content to replace content 
  18. */ 
  19. function custom_authcache_common_process(&$cache) { 
  20.   $cache->data['body'] = str_ireplace('<span id="replace_placeholder_1"/>', _get_real_data(), $cache->data['body']); 
  21. ?> 

看上面的注釋,復(fù)制兩行代碼到settings.php文件,具體的說明注釋已經(jīng)很詳細(xì)了,相信應(yīng)該沒問題.

這樣,這個(gè)custom_authcache_common_process函數(shù)就可以動(dòng)態(tài)替換HTML里面的內(nèi)容了,達(dá)到了個(gè)性化頁面的目的.

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
国产高清免费视频| 人日人天天爽| 国产小视频在线高清播放| 狠狠干五月天| 国产一级视频| gogo在线高清视频| 自拍亚洲国产| 伊人av免费在线观看| 欧洲有码在线视频| 国产日产一区二区| 人xxxx性xxxxx欧美| 国内精品不卡| 9色在线视频网站| 九九热在线观看| 国产精彩视频在线观看免费蜜芽| 国产三级在线免费观看| 一级二级三级在线观看| 午夜视频99| 欧洲有码在线视频| 在线一区二区三区精品| 国产麻豆麻豆| www.色五月| av二区三区| 国产传媒在线播放| 九九99精品| 99reav| 国产人成在线观看| 狠狠干天天爱| 青青久在线视频免费观看| 国产成人夜间影院在线观看| аⅴ成人天堂中文在线| 在线一区二区三区精品| 国产黄在线看| 国产深夜福利| 国产激情99| 国产高清一区二区三区视频| 国产一级大片| 国产精品国精产品一二| 国产精品第八页| 国产经典自拍视频在线观看| 国产调教视频在线观看| 国产三线在线| 18av在线视频| av亚洲在线| 九九精品九九| 国产免费黄网站| 国产免费专区| 国产精品一区牛牛影视| 国产一二三区在线观看| 国产系列在线观看| 国产福利小视频在线| 91免费日韩| 日本亚洲精品| 国产在线观看av| 国产精品一区二区三区高清在线| 国产精品自拍亚洲| 国产丝袜精品丝袜| 精品麻豆一区二区三区| av片在线观看| 午夜视频在线看| 国产高清在线视频| xxx国产精品| 国产美女免费观看| 国产欧美一区二区三区小说| 2018中文字幕在线观看| 欧美性猛交p30| 国产精品麻豆一区二区三区| 在线āv视频| 激情亚洲综合网| 国产极品一区二区三区| 欧美大交乱xxxx| 国产wwww| 天堂资源在线中文| 在线中文字幕观看| 天堂资源最新在线| 永久免费网站在线| 国产在线看片| 中文在线有码| 中文字幕在线免费观看| 四虎国产精品永久| 2021av天天| 天天操天天射天天插| 在线三级av| 国产一级片网站| 免费一区二区三区视频狠狠| 国产成人午夜| 国产视频一二三区| 中文字幕在线免费视频| 狠狠操视频网| www.eeuss影院| 999在线视频| 国产9色视频| 国产桃色电影在线播放| 黄色网页网址在线免费| 日本视频在线| h网站免费在线观看| 2021av天天| 国产福利小视频在线观看| 国产一区二区在线|播放| 国产女人伦码一区二区三区不卡| 欧美日韩国产亚洲沙发| wwwww亚洲| 久久久久久久久久久久网站| 久久五月精品中文字幕 | 国产区视频在线播放| 天天爱天天色| 国产精品被窝福利一区 | 99久久国产视频| 在线激情小视频| 在线成人综合色一区| 亚洲欧美日韩综合精品网| av影视在线看| 久久国产情侣| 福利视频在线看| 国产精品18久久久久网站| 亚洲最新永久在线观看| 免费在线看v| 国产区在线视频| 亚洲视频日韩| 国产麻豆精品入口在线观看| 天堂在线视频| 国产对白在线| 男人天堂v视频| 国产高清av| 日本国产在线| 国产剧情av在线| 91啦中文在线| 国产在线麻豆精品| 国产精品久久久久久精| 三级小说一区| 国产日产一区二区| www.操.com| 96精品视频| 九色成人在线| av手机天堂| 国产youjizz在线| 天堂在线视频| 成年女人在线视频| 99re在线视频| 国产成人综合亚洲欧美在| 欧美高清视频| av网址在线看| 国产黄色一级电影| 激情综合网五月激情| 在线成人综合色一区| 国产视频1区| 综合图区亚洲白拍在线| 成av人免费青青久| 免费在线观看a| a级在线观看| 亚洲私人影吧| 在线免费看黄| 在线亚洲精品自拍| 精品国产免费第一区二区| 国产精品国产国产aⅴ| 日本中文字幕在线视频| 麻豆视频在线观看免费网站| www.狠狠色.com| 亚洲人av在线| 日本亚洲欧美| 九九在线视频| 国产美女高潮| 国产日韩欧美第一页| 国产色在线 com| 国产高清视频在线播放| 2021天堂中文幕一二区在线观| 国产精品伦一区二区三区级视频频| 最新国产在线| 国产福利图片| 四虎国产精品永久| 免费在线超碰| 国产精品四虎| 香蕉视频在线观看www| 天天干天天摸| 国产尤物视频在线| 国产天堂素人系列在线视频| 国产色在线 com| 2018中文字幕在线| 亚洲一本大道| 天堂资源最新版在线视频观看免费网| 国产一区精品| 亚洲社区在线| 免费一区二区在线观看| 中文字幕一区免费| 亚洲精品天堂在线| 99视频在线观看地址| 精品176二区| 国产在线超碰| 精品一区二区三区在线观看l| 亚洲综合天堂网| 中文字幕在线看精品乱码| av色在线观看| 国产三级视频在线看| 青青草视频在线免费观看| 国产日本在线视频| 老鸭窝av在线| 在线观看免费观看在线91| 国产在线观看色| 精品久久亚洲一级α| 五月婷婷在线视频|