前言:APR(Apache portable Run-time libraries,Apache可移植 運行庫) 主要爲上層的應用程序提供一個可以跨越多操作系統 平臺使用的底層支持接口庫。在早期的Apache版本中,應用 程序本身必須能夠處理各種具體操作系統平臺的細節,並針 對不同的平臺調用不同的處理函數。
在centos6上的版本信息
[root@centos6 ~]#rpm -q apr
apr-1.3.9-5.el6_2.x86_64
如果安裝httpd-2.4版本,apr的版本是必須要在1.4以上的版本才能使用。
準備工作:
下載相應的包(在這裏用的是最新的版本):
httpd-2.4.27.tar.bz2
apr-1.6.2.tar.bz2
apr-util-1.6.0.tar.bz2
注:以下的實驗環境全在 /app/的目錄下
一、編譯安裝 apr-1.6.2.tar.bz2
1. tar -xvf apr-1.6.2.tar.bz2
2. cd apr-1.6.2
3. ./configure --prefix=/app/apr
4. make && make install
注:在編譯安裝的時候,會依賴一些包,在編譯的時候會提示,缺少什麼,就把相應的包安裝就可以了
依賴的一些包:pcre-devel、openssl-devel、expat-devel。(我在編譯之前就已經安裝好了)
編譯的環境:包組-development tools(默認是安裝)
二、編譯安裝 apr-util-1.6.0.tar.bz2
1. tar -xvf apr-util-1.6.0.tar.bz2
2. cd apr-util-1.6.0
3. ./configure --prefix==/app/apr-util --with-apr=/app/apr
4. make && make install
三、創建用戶
1. mkdir /app/website # 指定的網頁頁面地址
2. useradd -r -d /app/website -s /sbin/nologin apache
四、編譯安裝 httpd-2.4.27.tar.bz2
1. tar -xvf httpd-2.4.27.tar.bz2
2. cd httpd-2.4.27
3. .configure --prefix=/app/httpd24 --enable-so -enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/app/apr/ --with-apr-util=/app/apr-util/ --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork
注:在編譯的時候要指定其apr和apr-util的位置,還有相應的特性
4. make && make install
五、vim /app/httpd24/conf/httpd.conf # 修改配置文件
1. user apache # 默認的是demone
group apache
2. Documentroot /app/website # 修改默認站點
<directory /app/website>
注:在httpd2.4版本上每個目錄必須要給予權限,否則默認是拒絕訪問的。
六、vim /etc/profile.d/httpd24.sh # 添加環境變量
1. mkdir /etc/profile.d/httpd24.sh
2. export PATH=/app/httpd24/bin:$PATH # 腳本中添加環境變量
3. . /etc/proflie.d/httpd24.sh # 生效
4. vim /etc/man.config # 添加幫助文檔
MANPATH /app/httpd24/man # 在相應的位置添加路徑
七、vim /etc/init.d/httpd24 # 這裏是把之前系統默認安裝http的啓動腳本,拿過來修改的。
apachectl=/app/httpd24/bin/apachectl # 自帶控制的服務腳本
httpd=${HTTPD-/app/httpd24/bin/httpd} # 系統的執行程序
prog=httpd # 這段是服務進程的程序名,不能修改
pidfile=${PIDFILE-/app/httpd24/logs/httpd.pid} # 進程的PID
lockfile=${LOCKFILE-/var/lock/subsys/httpd24} # 鎖文件
chkconfig --add httpd24 # 添加服務並啓動服務
chkconfig httpd24 on
service httpd24 start
八、mkdir /app/website # 創建默認站點,並且添加默認頁面
echo "/app/website/index.html" > index.html
九、測試
curl ip # 出現/app/website/index.html表現可以正常使用了