Centos7下安裝設定Apache2.4.41網站伺服器

Apache HTTP Server專案很高興宣布Apache HTTP Server 2.4.41版(「 Apache」和「 httpd」)的發布。此版本的Apache是Apache HTTPD的新一代2.4.x分支的最新GA版本,代表該專案十五年的創新,因此建議在所有先前的版本中使用!

Centos7下安裝設定Apache2.4.41網站伺服器
(阿帕契)官方網站:http://httpd.apache.org/
Apache HTTP Server專案很高興宣布Apache HTTP Server 2.4.41版(“ Apache”和“ 」)的發布。此版本的Apache是Apache HTTPD的新一代2.4.x分支的最新GA版本,代表該項目十五年的創新,因此建議在所有以前的版本中使用!
首先下載穩定版本-最新版本的2.4.41,版本發佈於2019-08-14,截至2020年3月,此版本是最新版本!

wget https://downloads.apache.org//httpd/httpd-2.4.41.tar.gz tar xvf httpd-2.4.41.tar.gz cd httpd-2.4.41

下載之後先不要盲目的安裝,2.4.41需要安裝一些依賴環境,以下是官方網站提供的安裝需求。
安裝Apache httpd需要以下要求:
1.APR和APR-Util
確保已在系統上安裝APR和APR-Util。如果不這樣做,或寧願不要使用系統提供的版本,同時下載APR和APR-的Util從最新版本的Apache APR,解開他們進入/httpd_source_tree_root/srclib/apr和/httpd_source_tree_root/srclib/apr-util (確保目錄名稱不具有版本號; /下,並使用./configure的--with-included-apr 選項。
2.Perl相容的正規表示式庫(PCRE)
該庫是必需的,但不再與httpd捆綁在一起。從http://www.pcre.org下載原始碼,或安裝連接埠或軟體包。如果您的建置系統找不到PCRE建置安裝的pcre-config腳本,請使用--with-pcre參數指向它。在某些平台上,您可能必須安裝對應的-dev 軟體包,以允許httpd根據已安裝的PCRE副本進行建置。
3.磁碟空間
確保您至少有50 MB的可用臨時磁碟空間。安裝後,伺服器大約佔用10 MB的磁碟空間。實際的磁碟空間要求將根據您選擇的配置選項,任何第三方模組以及伺服器上的一個或多個網站的大小而有很大不同。
4.ANSI-C編譯器和建置系統
確保已安裝ANSI-C編譯器。在GNU C編譯器(GCC)從自由軟體基金會(FSF) 的建議。如果您沒有GCC,則至少要確保供應商的編譯器符合ANSI。此外,您PATH必須包含基本的建置工具,例如make。
5.精確計時
HTTP協定的元素表示為一天中的時間。因此,是時候研究在系統上設定一些時間同步功能了。通常基於網路時間協定(NTP)來使用ntpdate或xntpd程式。有關NTP軟體和公共時間伺服器的更多詳細信息,請參見NTP主頁。
6.Perl 5 [可選]
對於某些支援腳本,例如apxs或dbmmanage(用Perl編寫),則需要Perl 5解釋器(版本5.003或更高版本已足夠)。如果configure腳本未找到Perl 5解釋器,則無法使用受影響的支援腳本。當然,您仍然可以建置和使用Apache httpd。

首先安裝Openssl:

wget https://www.openssl.org/source/openssl-1.0.2m.tar.gz tar xvf openssl-1.0.2m.tar.gz cd openssl-1.0.2m ./config --prefix=/usr/local/ssl --shared make make /c/c面> /lib/ib. ldconfig

安裝Apache2.4.41:
APR和APR-Util的下載網站是:http://apr.apache.org/download.cgi
將兩個軟體包下載在apache安裝目錄的srclib內。先進入srclib目錄。下載完畢後改名,去掉版號,改成apr和apr-util

。 apr-1.7.0 apr mv apr-util-1.6.1 apr-util cd\

改好名字後退出資料夾,再次cd進入到httpd-2.4.41的安裝檔裡面進行安裝。如果遇到錯誤提示,缺少依賴環境。在安裝之前需要先yum安裝其它的依賴環境

sudo yum -y install pcre-devel expat-devel libxml2-devel

以來環境安裝完畢後就可以configure了。預設安裝,不需要更改參數,預設安裝後,安裝目錄是/usr/local/apache2

cd httpd-2.4.41 ./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite --enable-ssl --with-ssl=/usr/local/ssl --with-mpm=prefork make make install

--prefix 指定安裝路徑
--enable-so 讓apache核心裝載DSO(動態共享目標)
--enable-rewrite 啟用重寫功能
--enable-modules 將模組編譯到apache中
--enable-ssl 開啟ssl協議
--with-mpm 指定運行模型
運轉模式分為三種:
1.多進程模型:prefork(預衍生)
2.多進程多執行緒混合模型:worker(工作者)
3.多行程多執行緒混合模型:event(事件)
Configure參數解釋:

--prefix=/usr/local/apache2指定apache的安裝路徑
--enable-so這個是支援動態共享模組
--enable-rewrite支援URL重寫
--enable-ssl支援ssl
--with-ssl=/usr/local/openssl這個是指定openssl的安裝位置
--enable-cgi啟用cgi
--enable-modules=most指明要靜態編譯到httpd二進位的模組all或most,all代表包含所有的模組most代表大部分的模組
--enable-mods-shared=most指明要以DSO方式編譯的模組,all代表全部,most代表大部分
--enable-mpms-shared=all啟用MPM所有支援的模式,這樣event,worker,prefork就會以模組化的方式安裝,要用哪一個就在httpd.conf裡面配置就好了
--with-mpm=event指定啟用mpm模式,預設使用enevt模式,在apache的早期版本2.0預設prefork,2.2版本是worker 2.4版本是event.
--with-pcre=/usr/local/pcre支援pcre
--with-z=/usr/local/zlib使用zlib 壓縮庫
--with-apr=/usr/local/apr指定apr 的安裝路徑
--with-apr-util=/usr/local/apr-util 指定apr-util 的安裝路徑
--enable-expires啟動彧透過設定檔控制HTTP 的「Expires:」和「Cache-Control:」頭內容,也就是網站圖片、js、css等內容,提供用戶端瀏覽器快取的設定。這個是apache調優的一個重要選項之一。
--enable-deflate提供對內容的壓縮傳輸編碼支持,一般是html、js、css等內容的網站。使用此參數會打打提高傳輸速度,提升訪客訪問的體驗。在生產環境中,這是apache調優的重要選項之一

如果在安裝apache2.4中提示openssl版本過低的話,還需要安裝openssl。
openssl官方網站:https://www.openssl.org/
安裝openssl時候需要帶--enable-shared參數,加上--enable-shared參數是為了將openssl加入lib或lib64的共享庫裡,不然apache會找不到openssl。
好了到這裡apache2.4.41(阿帕契)已經安裝完畢了。下一步是需要設定apache2.4.41安裝後的設定了。

cd /usr/local/apache2 ls -l cd conf ls -l vi httpd.conf

編輯apache2的設定檔httpd.conf
將User和Group都修改成www,然後儲存退出。
如果本機沒有建立www用戶群組和用戶的話需要建立一下。

groupadd www useradd -g www www

給網站目錄更改使用者群組權限。

chown -R www www /var/www/html

關於httpd.conf更詳細的設定問題請造訪:詳細解讀Apache2.4的httpd.conf設定文件
新增httpd系統服務

ln -s /usr/local/apache2.4/bin/apachectl /etc/rc.d/init.d/httpd

題外話:手動安裝相對於yum安裝來說還是很麻煩的,不建議手動安裝,卸載需要挨個目錄刪除,啟動也需要設定腳本。手動安裝只是讓你了解安裝的操作過程。
設定apache2.4.41開機啟動
Centos7以下版本用戶
vi /etc/rc.d/rc.local
在文件末端加上下面內容,儲存退出!
/usr/local/apache2/bin/apachectl start
給啟動檔增加執行權限
chmod +x /etc/rc.d/rc.local
reboot重新啟動伺服器! apache安裝完畢。
Centos7x使用者可以新建立apache啟動文件,VI開啟一個不存在的文件,使用:wq儲存退出後文件就建立了。

vi /usr/lib/systemd/system/httpd.service

將下面內容複製到httpd.service檔案內

[Unit] Description=The Apache HTTP Server After=network.target remote-fs.target nss-lookup.target Documentation=man:httpd(8) Documentation=man:apachectl(8) [Service] Type=forking #EnvironmentFile=/ $OPTIONS -k start ExecReload=/usr/local/apache2/bin/httpd $OPTIONS -k graceful ExecStop=/bin/kill -WINCH {MAINPID} KillSignal=SIGCONT PrivateTmp=true [Install] WantedBytarmulti.

重新載入啟動文件,然後啟動apache2.4.41

systemctl daemon-reload systemctl start httpd

使用狀態指令看是否啟動正常!

systemctl status httpd

Centos7下安裝設定Apache2.4.41網站伺服器

現在打開你本機的ip位址後,網頁上就顯示apache的歡迎頁了!恭喜你,已經成功的安裝了apache2.4.41了!
"It works!"

1/5 - (2 votes)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *