編譯安裝apache

來源:互聯網
上載者:User

標籤:編譯安裝apache

./configure --prefix=/application/apache.2.2.27/  \      //安裝時指定安裝位置

--enable-deflate  \                  //對傳輸檔案進行壓縮

--enable-expires  \                  //瀏覽器緩衝

--enable-headers  \                 //啟用http頭部

--enable-modules=most  \      //載入apache模組

--enable-so  \                          

--with-mpm=worker  \            //選擇apache的工作模式(支援高並發worker)

--enable-rewrite                      //偽靜態





apache有三種運行模式:
1, prefork MPM;

2, worker MPM;
3, perchild MPM.

 

prefork MPM
管理員應選擇prefork MPM來實施基於流程的Web伺服器。雖然基於流程的伺服器有一些速度較慢的效能,它們通過模組來提供穩定性和相容性,這些模組不支援線程。為了改進效能,伺服器的父流程fork多個子流程並使它們能夠用於應答請求。當接收到請求時,伺服器把其分配給子流程。如果沒有子流程可用,伺服器建立新的子流程並把它添加到庫中。但是,子流程的建立會導致延遲。當配置這一MPM時,管理員可以限制啟動時可以建立的子流程數、最大的子流程數等。這一MPM有利於形成一個穩定的Apache伺服器,但同時會影響效能和佔用記憶體,因為單個流程的大小會佔很大一部分。

The worker MPM

為了實施混合伺服器,管理員可以選擇worker MPM,它提供比prefork MPM更卓越的可靠性、故障恢複能力和可擴充性。啟動時父流程建立規定數量的子流程,反過來每個子流程包含多個線程。每個子流程中只有一個線程聆聽網路,它簡化了程式碼,減少了流程之間的協作,從而提高效能。雖然這一MPM穩定且效能優於prefork,由於它是基於線程,與其一同使用的所有模組都必須是完全的線程-安全。大多數Apache 1.3模組不是安全執行緒,並且由於worker MPM不向後相容,因此,使用這一MPM的管理員也不能一同使用Apache 1.3模組和Apache 2.0。但是使用prefork MPM來編譯伺服器允許管理員使用Apache 1.3模組。

The perchild MPM
如果遇到這樣一種情況,考慮到安全性和效能,需要Apache流程基於不同的使用者ID來運行,管理員可以使用perchild MPM 來編譯混合伺服器。互連網服務供應商(ISP)通常使用這一MPM來實現虛擬託管。當perchild啟動時,它建立規定數量的流程,每個流程有規定數量的線程和專用的使用者ID。如果伺服器上的負載增加,它使用現有流程之一來建立新線程,而不是建立新流程。這種MPM是最可擴充,但也最不可靠。


編譯安裝apache

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.