201501261456Apache - disk_cache_module , file_cache_module

剛剛將某一台舊的 web 移植到新的網頁主機,也由於前架構不是自己安裝,故搬移上多了一些問題,底下就簡單的列出處理的指令。

一般來說 web Server 只需要以「sudo yum -y install httpd」指令就安裝OK了。

不過原有的環境還有使用 perl 與 python 所以要額外安裝

sudo yum install -y mod_ssl
sudo yum install -y mod_perl
sudo yum install -y mod_python

複製了原有系統的  httpd.conf 及 /etc/httpd/conf.d 下的 conf 發現仍無法正常執行,卡在了202行的「LoadModule disk_cache_module modules/mod_disk_cache.so」及203行的「LoadModule file_cache_module modules/mod_file_cache.so

檢查了一下 /etc/httpd/modules/ 底下並沒有  mod_OO_cache.so 的檔案存在,這該怎麼安裝呢?這無法以 yum 套件的方式安裝,要以 apxs 方式安裝

Step 1:sudo yum install -y gcc    //環境要能有編譯的功能
Step 2:下載 yum 套件安裝相對應的原始檔版本。例如我 YUM 安裝的是 2.2.15 ,而目前 apache 有「2.4.10」及「2.2.29」,所以我抓「2.2.29」版的SRC檔案,並且進行解壓縮。
             cd ~tmp/ ; wget http://apache.stu.edu.tw//httpd/httpd-2.2.29.tar.gz ; tar zxvf httpd-2.2.29.tar.gz ; cd  httpd-2.2.29/modules/cache/     切換到 cache 這個目錄

Step 3:以 apxs 方式安裝額外的模組
             sudo apxs -i -a -c mod_file_cache.c
             sudo apxs -i -a -c mod_mem_cache.c
             這時候他會自動的在你的 /etc/httpd/conf/httpd.conf 增加幾行

# The following modules are not loaded by default:
#
#LoadModule cern_meta_module modules/mod_cern_meta.so
#LoadModule asis_module modules/mod_asis.so
LoadModule file_cache_module /usr/lib64/httpd/modules/mod_file_cache.so
LoadModule mem_cache_module /usr/lib64/httpd/modules/mod_mem_cache.so

你可以試著重新啟動 web server ,若是還是有錯誤,可以在額外安裝底下幾個模組
sudo apxs -c -i  cache_cache.c cache_pqueue.c cache_hash.c

最後我是使用 apxs 安裝到 /etc/httpd/modules/ 的 so 檔案,經上方自動加入的 /usr/lib64... 給註解掉,然後使用下方的設定。
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule mem_cache_module modules/mod_mem_cache.so

然後重新啟動就OK了

sudo service httpd restart

 

~End

回應
Google Search
Google
累積 | 今日
loading......
平均分數:0 顆星
投票人數:0
我要評分:
Google