您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么安裝Apache2.4.23,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
一、Apache2.4新增特性
1.新增模塊
mod_proxy_fcgi(可提供fcgi代理)
mod_ratelimit(限制用戶帶寬)
mod_request(請(qǐng)求模塊,對(duì)請(qǐng)求做過(guò)濾)
mod_remoteip(匹配客戶端的IP地址)
對(duì)于基于IP的訪問(wèn)控制做了修改,不再支持allow,deny,order機(jī)制,而是統(tǒng)一使用require進(jìn)行。
2.MPM支持在運(yùn)行時(shí)裝載;不過(guò)要開(kāi)啟這種特性,在編譯安裝要啟用這三種功能;
--enable-mpms-shared=all --with-mpm=event
3.支持event,這是Apache最新的工作模式。
4.支持異步讀寫(xiě)
5.在每個(gè)模塊及每個(gè)目錄上指定日志級(jí)別
6.增強(qiáng)版的表達(dá)式分析器
7.每請(qǐng)求配置:<If>, <Elseif>
8.毫秒級(jí)別的keepalive timeout
9.基于FQDN的虛擬主機(jī)不再需要NameVirtualHost指令
10.支持使用自定義變量
二、編譯安裝Apache2.4.23
系統(tǒng)環(huán)境:Centos7.3,關(guān)閉selinux
需要的源碼包:
httpd-2.4.23.tar.gz
apr-1.5.2.tar.gz
apr-util-1.5.4.tar.gz
zlib-1.2.8.tar.gz
pcre-8.39.tar.gz
這里提前將這些包下載下來(lái),并存放到了/root/目錄下。
注:apr(Apache Portable Runtime)Apache可移植運(yùn)行庫(kù),它是一個(gè)對(duì)操作系統(tǒng)調(diào)用的抽象庫(kù),用來(lái)實(shí)現(xiàn)Apache內(nèi)部組件對(duì)操作系統(tǒng)的使用,提高系統(tǒng)的可移植性。
下面通過(guò)腳本實(shí)現(xiàn)Apache2.4.23的安裝:
#install apr
tar zxf apr-1.5.2.tar.gz
cd apr-1.5.2/
./configure --prefix=/usr/local/apr
make
make install
#install apr-util
cd /root/
tar zxf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install
#install zlib
cd /root/
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8/
./configure --prefix=/usr/local/zlib
make
make install
#install pcre
cd /root/
tar zxf pcre-8.39.tar.gz
cd pcre-8.39/
./configure --prefix=/usr/local/pcre
make
make install
#install openssl
cd /root/
tar zxf openssl-1.0.1u.tar.gz
cd openssl-1.0.1u/
./config -fPIC --prefix=/usr/local/openssl enable-shared
make
make install
mv /usr/bin/openssl /usr/bin/openssl.1.0.1e
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
#install httpd
cd /root/
tar zxf httpd-2.4.23.tar.gz
cd httpd-2.4.23/
./configure --prefix=/usr/local/http-2.4.23 --enable-so --enable-cgi --enable-cgid --enable-ssl --with-ssl=/usr/local/openssl --enable-rewrite --with-pcre=/usr/local/pcre --with-z=/usr/local/zlib --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --with-mpm=event --enable-proxy --enable-proxy-fcgi --enable-expires --enable-deflate
make
make install
ln -s /usr/local/http-2.4.23/bin/* /usr/local/bin/
#Automatic startup after switch on
cp /usr/local/http-2.4.23/bin/apachectl /etc/init.d/httpd
sed -i '1i # chkconfig: 35 85 15\n# description: apache 2.4.23' /etc/init.d/httpd
chkconfig --add httpd
chkconfig httpd on
#startup httpd
sed -i '1i ServerName www.test.com' /usr/local/http-2.4.23/conf/httpd.conf
/etc/init.d/httpd -t
/etc/init.d/httpd start
netstat -utpln | grep httpd
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
注意:centos7自帶版本openssl-1.0.1e對(duì)于apache2.4.23來(lái)說(shuō)版本過(guò)低,需要下載安裝openssl-1.0.1u
httpd配置的相關(guān)參數(shù)解釋?zhuān)?/p>
--enable-so:支持動(dòng)態(tài)共享模塊(即打開(kāi)DSO支持)
--enable-rewrite:支持url重寫(xiě)
--enable-ssl:支持ssl
--with-ssl=/usr/local/openssl:指定ssl安裝位置
--enable-cgi:?jiǎn)⒂胏gi
--enable-cgid:MPM使用的是event或worker要啟用cgid
--enable-modules=most:明確指明要靜態(tài)編譯到httpd二進(jìn)制文件的模塊,<MODULE-LIST>為空格分隔的模塊名列表、all或者most,all表示包含所有模塊,most表示包含大部分常用模塊
--enable-mods-shared=most:明確指明要以DSO方式編譯的模塊,<MODULE-LIST>為空格分隔的模塊名列表、all或者most,all表示包含所有模 塊,most表示包含大部分模塊
--enable-mpms-shared=all:啟用MPM所有支持的模式,這樣event、worker、prefork就會(huì)以模塊化的方式安裝,要用哪個(gè)就在 httpd.conf 里配置就好了。
--with-mpm=event:指定啟用的mpm模式,默認(rèn)使用enevt模式,在apache的早期版本2.0默認(rèn)prefork,2.2版本是worker,2.4版本是event.
--with-pcre=/usr/local/pcre:支持pcre
--with-z=/usr/local/zlib:使用zlib壓縮庫(kù)
--with-apr=/usr/local/apr:指定apr的安裝路徑
--with-apr-util=/usr/local/apr-util:指定apr-util的安裝路
--enable-expires:激活彧通過(guò)配置文件控制HTTP的“Expires:”和“Cache-Control:”頭內(nèi)容,即對(duì)網(wǎng)站圖片、js、css等內(nèi)容,提供客戶端瀏覽器緩存的設(shè)置。這個(gè)是apache調(diào)優(yōu)的一個(gè)重要選項(xiàng)之一。
--enable-deflate:提供對(duì)內(nèi)容的壓縮傳輸編碼支持,一般是html、js、css等內(nèi)容的站點(diǎn)。使用此參數(shù)會(huì)打打提高傳輸速度,提升訪問(wèn)者訪問(wèn)的體驗(yàn)。在生產(chǎn)環(huán)境中,這是apache調(diào)優(yōu)的一個(gè)重要選項(xiàng)之一。
二、安裝完成后出現(xiàn)的問(wèn)題及及解決方法
可以看到80端口處于監(jiān)聽(tīng)狀態(tài),說(shuō)明httpd服務(wù)正常。但是,查看其狀態(tài)時(shí)報(bào)錯(cuò),說(shuō)是”lynx”這個(gè)命令沒(méi)有找到。下面,就這個(gè)問(wèn)題說(shuō)明一下解決的思路和方法。
“l(fā)ynx”是一種純文本模式的網(wǎng)頁(yè)瀏覽器,”lynx”命令找不到可能是因?yàn)樵撥浖](méi)有安裝。
安裝”lynx”之后,再查看httpd的狀態(tài),提示說(shuō)請(qǐng)求的URL中”/server-status”找不到,那么我們可以看一下httpd啟動(dòng)腳本中關(guān)于”/server-status”的信息:
從注釋中可以看出這個(gè)URL鏈接的是mod_status這個(gè)模塊的狀態(tài)頁(yè),之前的報(bào)錯(cuò)信息說(shuō)明這個(gè)狀態(tài)頁(yè)找不到,那有可能是主配置文件中并沒(méi)有該資源的配置信息。
通過(guò)以上步驟,可以確定”/server-status”這個(gè)狀態(tài)頁(yè)信息是定義在httpd-info.conf這個(gè)配置文件中的,那么我們便需要在主配置文件中加載httpd-info.conf,去掉配置行”Include conf /extra/httpd-info.conf”之前的”#”即可。
優(yōu)雅啟動(dòng)httpd服務(wù),再次查看其狀態(tài),發(fā)現(xiàn)沒(méi)有權(quán)限查看該狀態(tài)頁(yè),那就修改httpd-info.conf,賦予查看該狀態(tài)頁(yè)的權(quán)限:
優(yōu)雅啟動(dòng)httpd,查看其狀態(tài)成功!
以上是“怎么安裝Apache2.4.23”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。