製作Apache httpd 2.4 RPM套件

原本想說用yum base提供的2.2.15就好了,但新版本的mod_proxy_fcgi實在很吸引人,就來試試看自己製作套件

套件製作過程不簡單,尤其是那龐大的相依性....

基本上就是下載source tarball,然後用"rpmbuild -tb"去製作

如果看到rpmbuild提示相依套件的話,再去yum就好了

這邊列一下無法用上面的簡單方法解決的特殊套件

APR、APR-util這兩組套件必須要自行到Apache APR去下載,然後再用上述方法製作套件後安裝

另外一個很難搞的是distcache,這套件在RHEL 6已經被拿掉了,要去下載Fedora的SRPM重新編譯再安裝

# wget http://ftp.riken.jp/Linux/fedora/releases/16/Everything/source/SRPMS/distcache-1.4.5-22.src.rpm
# rpmbuild --rebuild distcache-1.4.5-22.src.rpm
# rpm -Uvh rpmdevel/rpm/RPMS/x86_64/distcache-1.4.5-22.x86_64.rpm rpmdevel/rpm/RPMS/x86_64/distcache-devel-1.4.5-22.x86_64.rpm

製作好httpd套件要安裝的時候,還會說/etc/mime.types找不到

# rpm -q --whatprovides /etc/mime.types
mailcap-2.1.31-2.el6.noarch

得到是mailcap後,用yum去裝,接著httpd就能順利安裝完成了

# apachectl -V
Server version: Apache/2.4.4 (Unix)
Server built:   May 23 2013 19:15:44
Server's Module Magic Number: 20120211:11
Server loaded:  APR 1.4.6, APR-UTIL 1.5.2
Compiled using: APR 1.4.6, APR-UTIL 1.5.2
Architecture:   64-bit
Server MPM:     event
  threaded:     yes (fixed thread count)
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/usr"
 -D SUEXEC_BIN="/usr/sbin/suexec"
 -D DEFAULT_PIDLOG="/var/run/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/etc/httpd/conf/mime.types"
 -D SERVER_CONFIG_FILE="/etc/httpd/conf/httpd.conf"

資料來源:http://d.hatena.ne.jp/akishin999/20120226/1330229289
http://httpd.apache.org/docs/2.4/platform/rpm.html

留言

粗體斜體刪除線連結引用圖片程式碼

注意:您的電子信箱將不會被公開,且網站連結不會被搜尋引擎採計