linux源碼方式安裝Apache
Apache 的安裝方式包括:源碼包安裝和二進制包安裝。
以源碼包方式安裝步驟:
1. 下載apache
http://httpd.apache.org/download.cgi
在linux下
wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.6.tar.gz
2. 解壓縮下載的源碼包
mkdir -p /usr/local/src/apache
mv httpd-*.*.*.tar.gz /usr/local/src/apache
cd /usr/local/src/apache
tar zxvf httpd-*.*.*.tar.gz
3. 配置Makefile文件
cd httpd-*.*.*
查看可配置選項和可用模塊
./configure --help
配置命令常用格式如下:
CC=gcc CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"
./configure --prefix=<Install Path> --enable-<FEATURE>[=ARG] --disable-<FEATURE> --enable-modules=<MODULE LIST>
--enable-so --enable-mods-shared=<Module List> --with-mpm=<MPM>
其中:
CC: C編譯器的名稱。
CFLAGS:編譯器的標誌,本示例爲 -O3,指定優先級別爲3。
CXX:C++ 編譯器的名稱
CXXFLAGS:C++編譯器的標誌。
--prefix=<install path>: 指明編譯後的二進制文件安裝到<install path>目錄,缺省將安裝到 /usr/local/apache2 目錄。
建議將apache與操作系統安裝在不同物理磁盤或分區上,以便於日後的升級、備份、恢復。
--enable-<FEATURE>[=ARG]: 明確指明靜態編譯某一屬性或模塊到httpd二進制文件,如果[=ARG]不明確指出,默認爲=yes;如果指定[=ARG]爲=no,
則效果等同於下面的 --disable-<FEATURE>; 如果指定[=ARG]爲=share,則單獨編譯爲動態加載模塊(DSO),需要通過 --enable-so 選項打開DSO支持。
用實際的屬性或模塊名來替換<FEATURE>, 如--enable-rewrite, --enable-rewrite=no, --enable-rewrite=share
--disable-<FEATURE>:明確指明不靜態編譯某一屬性或模塊到httpd二進制文件。
--enable-modules=<ModuleList>:明確指明要靜態編譯到httpd二進制文件的模塊,<ModuleList>爲空格分隔的模塊名列表、all或者most,all表示包含所有模塊,most表示大部分模塊。
--enable-so: 指明編譯動態加載模塊(DSO)支持到httpd二進制文件,此模塊使得Apache的各個功能模塊可以與核心分開編譯、運行時動態加載。最新版本的Apache默認編譯此模塊到httpd二進制文件。
--enable-mods-shared=<ModuleList>: 明確指明要以DSO方式編譯的模塊,<ModuleList>爲空格分隔的模塊列表、all、most,all表示包含所有模塊,most表示包含大部分模塊。
--with-mpm=<MPM>: 選擇Apache多路處理模塊,<MPM>={beos|event|worker|prefork|mpmt_os2},prefork 爲 Unix 系統下默認處理模塊,它將運行一個非線程的、預派生的Wep服務器;
worker 爲支持混合的多線程多進程的多處理模塊。
4. make
5. make install
6. 設置開機自啓動服務控制腳本
apache start
/usr/local/apache-*.*.*/bin/apachectl start
apache stop
/usr/local/apache-*.*.*/bin/apachectl stop
讓apache隨系統啓動自啓動
echo "/usr/local/apache-*.*.*/bin/apachectl start" >> /etc/rc.local
把apache加入到系統服務
首先以apachectl腳本爲模板生成apache服務控制腳本:
grep -v "#" /usr/local/apache-*.*.*/bin/apachectl > /etc/init.d/apache
編輯/etc/init.d/apache,在文件最前面插入下面的行,使其支持chkconfig命令:
#!/bin/sh
# chkconfig: 2345 85 15
# description: Apache is a World Wide Web server.
爲apache服務控制腳本添加執行權限:
chmod +x /etc/init.d/apache
將apache服務加入到系統服務:
chkconfig --add apache
檢查apache服務是否生效:
chkconfig --list apache
如果命令輸出如下結果則表明apache服務已經生效:
apache 0:off 1:off 2:on 3:on 4:on 5:on 6:of
上面表明apache在2、3、4、5系統運行級別隨系統啓動而自啓動。
以上如果全部成功後,可以用service命令控制apache的啓動和停止。
service apache start/stop
關閉apache隨系統啓動自啓動:
chkconfig apache of
改變開機自啓動的運行級別:
chkconfig --level 35 apache on
以源碼包方式安裝步驟:
1. 下載apache
http://httpd.apache.org/download.cgi
在linux下
wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.6.tar.gz
2. 解壓縮下載的源碼包
mkdir -p /usr/local/src/apache
mv httpd-*.*.*.tar.gz /usr/local/src/apache
cd /usr/local/src/apache
tar zxvf httpd-*.*.*.tar.gz
3. 配置Makefile文件
cd httpd-*.*.*
查看可配置選項和可用模塊
./configure --help
配置命令常用格式如下:
CC=gcc CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"
./configure --prefix=<Install Path> --enable-<FEATURE>[=ARG] --disable-<FEATURE> --enable-modules=<MODULE LIST>
--enable-so --enable-mods-shared=<Module List> --with-mpm=<MPM>
其中:
CC: C編譯器的名稱。
CFLAGS:編譯器的標誌,本示例爲 -O3,指定優先級別爲3。
CXX:C++ 編譯器的名稱
CXXFLAGS:C++編譯器的標誌。
--prefix=<install path>: 指明編譯後的二進制文件安裝到<install path>目錄,缺省將安裝到 /usr/local/apache2 目錄。
建議將apache與操作系統安裝在不同物理磁盤或分區上,以便於日後的升級、備份、恢復。
--enable-<FEATURE>[=ARG]: 明確指明靜態編譯某一屬性或模塊到httpd二進制文件,如果[=ARG]不明確指出,默認爲=yes;如果指定[=ARG]爲=no,
則效果等同於下面的 --disable-<FEATURE>; 如果指定[=ARG]爲=share,則單獨編譯爲動態加載模塊(DSO),需要通過 --enable-so 選項打開DSO支持。
用實際的屬性或模塊名來替換<FEATURE>, 如--enable-rewrite, --enable-rewrite=no, --enable-rewrite=share
--disable-<FEATURE>:明確指明不靜態編譯某一屬性或模塊到httpd二進制文件。
--enable-modules=<ModuleList>:明確指明要靜態編譯到httpd二進制文件的模塊,<ModuleList>爲空格分隔的模塊名列表、all或者most,all表示包含所有模塊,most表示大部分模塊。
--enable-so: 指明編譯動態加載模塊(DSO)支持到httpd二進制文件,此模塊使得Apache的各個功能模塊可以與核心分開編譯、運行時動態加載。最新版本的Apache默認編譯此模塊到httpd二進制文件。
--enable-mods-shared=<ModuleList>: 明確指明要以DSO方式編譯的模塊,<ModuleList>爲空格分隔的模塊列表、all、most,all表示包含所有模塊,most表示包含大部分模塊。
--with-mpm=<MPM>: 選擇Apache多路處理模塊,<MPM>={beos|event|worker|prefork|mpmt_os2},prefork 爲 Unix 系統下默認處理模塊,它將運行一個非線程的、預派生的Wep服務器;
worker 爲支持混合的多線程多進程的多處理模塊。
4. make
5. make install
6. 設置開機自啓動服務控制腳本
apache start
/usr/local/apache-*.*.*/bin/apachectl start
apache stop
/usr/local/apache-*.*.*/bin/apachectl stop
讓apache隨系統啓動自啓動
echo "/usr/local/apache-*.*.*/bin/apachectl start" >> /etc/rc.local
把apache加入到系統服務
首先以apachectl腳本爲模板生成apache服務控制腳本:
grep -v "#" /usr/local/apache-*.*.*/bin/apachectl > /etc/init.d/apache
編輯/etc/init.d/apache,在文件最前面插入下面的行,使其支持chkconfig命令:
#!/bin/sh
# chkconfig: 2345 85 15
# description: Apache is a World Wide Web server.
爲apache服務控制腳本添加執行權限:
chmod +x /etc/init.d/apache
將apache服務加入到系統服務:
chkconfig --add apache
檢查apache服務是否生效:
chkconfig --list apache
如果命令輸出如下結果則表明apache服務已經生效:
apache 0:off 1:off 2:on 3:on 4:on 5:on 6:of
上面表明apache在2、3、4、5系統運行級別隨系統啓動而自啓動。
以上如果全部成功後,可以用service命令控制apache的啓動和停止。
service apache start/stop
關閉apache隨系統啓動自啓動:
chkconfig apache of
改變開機自啓動的運行級別:
chkconfig --level 35 apache on
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.