Linux下安裝Apache httpd

來源:互聯網
上載者:User

Linux下安裝Apache httpd

httpd是Apache超文字傳輸通訊協定 (HTTP)(HTTP)伺服器的主程式。它被設計為一個獨立啟動並執行後台進程,它會建立一個處理請求的子進程或線程的池對外提供服務。httpd支援基於 虛擬機器主機,以及基於HOST、IP、PORT實現虛擬機器主機,反向 Proxy,負載平衡,路徑別名,使用者認證,basic,支援第三方模組等眾多特性。本文主要描述了Linux下httpd的安裝以及相關基本用法。

一、httpd的安裝
示範環境及版本    # cat /etc/issue    CentOS release 6.5 (Final)    Kernel \r on an \m    # uname -r    2.6.32-431.el6.x86_64查看httpd是否已安裝    # rpm -qa httpd使用yum列出相關httpd安裝檔案,此處為本地yum源        # yum list |grep httpd         httpd.x86_64                 2.2.15-29.el6.centos        local_server     httpd-devel.i686             2.2.15-29.el6.centos        local_server     httpd-devel.x86_64           2.2.15-29.el6.centos        local_server     httpd-manual.noarch          2.2.15-29.el6.centos        local_server     httpd-tools.x86_64           2.2.15-29.el6.centos        local_server 安裝及驗證httpd      # yum -y install httpd    # rpm -qa |grep httpd    httpd-tools-2.2.15-29.el6.centos.x86_64    httpd-2.2.15-29.el6.centos.x86_64使用rpm方式尋找設定檔       # rpm -qc httpd  常用的設定檔:    /etc/httpd/conf.d/*.conf        ###輔助設定檔    /etc/httpd/conf/httpd.conf      ###主設定檔    /etc/sysconfig/httpd            ###httpd工作模式設定檔使用rpm方式查看安裝位置及產生的二進位檔案      # rpm -ql httpd      主程式:    /usr/sbin/httpd  MPM模式預設    /usr/sbin/httpd.event    /usr/sbin/httpd.worker使用rpm方式查看包的協助檔案     # rpm -qd httpd   啟動指令碼:/etc/rc.d/init.d/httpd記錄檔目錄:    /var/log/httpd        access_log:訪問日誌        error_log: 錯誤記錄檔網站文檔目錄:(網站根目錄)    /var/www/htmlhttpd的工作目錄:/var/www
二、httpd的工作模式
1、MPM: Multipath Processing Module(多路處理模組) prefork: 多進程模型,每個進程響應一個請求;穩定性好,但並發能力有限;預先產生多個空閑進程; 由於prefork使用select()系統調用,所以最大並發不能超過1024; worker:多進程模型,每個進程可產生多個線程,每個線程響應一個請求;預先產生多個空閑線程; event:一個進程直接響應n個請求;可同時啟動多個進程; httpd-2.2: 測試使用; ### Author : Leshami httpd-2.4: 可生產使用; ### Blog : http://blog.csdn.net/leshami2、幾種工作方式的切換prefork模式下 # service httpd start Starting httpd: [ OK ] # ps -ef|grep httpd |grep -v grep ###一個主進程,產生了8個空閑進程 root 6413 1 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6416 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6417 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6418 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6419 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6420 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6421 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6422 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd apache 6423 6413 0 09:40 ? 00:00:00 /usr/sbin/httpd # ss -tulpn |grep httpd tcp LISTEN 0 128 :::80 :::* users:(("httpd",6413,4),("httpd",6416,4),("httpd",6417,4),("httpd",6418,4), ("httpd",6419,4),("httpd",6420,4),("httpd",6421,4),("httpd",6422,4),("httpd",6423,4) # netstat -nltp|grep 80 tcp 0 0 :::80 :::* LISTEN 6413/httpd worker工作方式 # cat /etc/sysconfig/httpd|grep -v ^# HTTPD=/usr/sbin/httpd.worker # service httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ] [root@orasrv1 ~]# ps -ef|grep httpd|grep -v grep root 2261 1 0 17:47 ? 00:00:00 /usr/sbin/httpd.worker apache 2264 2261 0 17:47 ? 00:00:00 /usr/sbin/httpd.worker apache 2265 2261 0 17:47 ? 00:00:00 /usr/sbin/httpd.worker apache 2266 2261 0 17:47 ? 00:00:00 /usr/sbin/httpd.workerevent工作方式注,儘管2.2版本可以設定工作方式為httpd.event,生產環境不建議使用 # cat /etc/sysconfig/httpd|grep -v ^# HTTPD=/usr/sbin/httpd.event [root@orasrv1 ~]# service httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ] [root@orasrv1 ~]# ps -ef|grep httpd|grep -v grep root 2402 1 0 17:49 ? 00:00:00 /usr/sbin/httpd.event apache 2405 2402 0 17:49 ? 00:00:00 /usr/sbin/httpd.event apache 2406 2402 0 17:49 ? 00:00:00 /usr/sbin/httpd.event apache 2407 2402 0 17:49 ? 00:00:00 /usr/sbin/httpd.event
三、httpd模組化特性
高度模組化 core + modules, DSO: Dynamic Shared Object模組目錄: /etc/httpd/modules: 符號連結檔案 /usr/lib64/httpd/modules模組的查看 httpd -M ###查看當前httpd進程的所有模組 httpd.event -M ###查看worker工作模式下的所有模組 httpd.worker -M ###event工作模式下的所有模組 httpd.worker -l ###event工作模式下的核心模組模組的查看樣本 # httpd -M Loaded Modules: core_module (static) mpm_prefork_module (static) http_module (static) so_module (static) auth_basic_module (shared) .............. # httpd.event -l Compiled in modules: core.c event.c http_core.c mod_so.c模組的動態裝載與卸載 # cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak # cat /etc/httpd/conf/httpd.conf |grep authn_alias_module LoadModule authn_alias_module modules/mod_authn_alias.so # vi /etc/httpd/conf/httpd.conf ###注釋mod_authn_alias.so模組 # cat /etc/httpd/conf/httpd.conf |grep authn_alias_module #LoadModule authn_alias_module modules/mod_authn_alias.so # service httpd restart # httpd -M ###使用該方式前後進行對比即可知道模組是否裝載或卸載 
四、驗證httpd服務
# echo "
orasrv1.xlk.com " >/var/www/html/index.html # curl http://192.168.21.10 orasrv1.xlk.com

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.