標籤:term 需要 httpd-2.4 apc make 方式 name 列表 list
step1: 查看是否已安裝apache軟體,如果有則卸載原有的apache step2: 先裝gcc和make yum -y install gcc yum -y install make
yum -y install gcc-c++ 沒有這個gcc-c++一會編譯不prce
step3: 從 http://httpd.apache.or 下載apache源碼包httpd-2.4.4.tar.gz
然後從 http://apr.apache.org 下載apr-1.4.6.tar.gz和apr-util-1.5.1.tar.gz
然後從 http://sourceforge.net/ 下載pcre-8.32.tar.gz和pcre-devel-8.32.tar.gz
step4: 用ftp軟體遠端連線linux伺服器,或者u盤把壓縮包拉到伺服器,把下載的壓縮包放到一個自訂的目錄下。切到下載好的源碼包目錄,本人是/root/data/compress-files
4.1 安裝apr:
tar -zvxf apr-1.4.6.tar.gz
cd apr-1.4.6
./configure --prefix=/usr/local/apr
make && make install
4.2 安裝apr-util
tar -zvxf apr-util-1.5.1.tar.gz
cd apr-util-1.5.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
4.3 安裝pcre
tar -zvxf pcre-8.32.tar.gz
cd pcre-8.32
./configure
make && make install
4.4 安裝pcre-devel
如果已經安裝好了pcre 一定要安裝
tar –zxvf pcre-devel-8.32.tar.gz
cd pcre-devel-8.32
./configure
make && make install
上面幾個包互相依賴,順序不能亂
4.5 安裝apache 一定要先裝上面那三個不然編譯不了
tar -zvxf httpd-2.4.4.tar.gz
cd httpd-2.4.4
./configure --prefix=/usr/local/apache –with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make && make install
這樣,apache就安裝到了/usr/local/apache目錄下。
step5 啟動apche服務。由於還沒把apache加入到linux的服務啟動中,所以這時候如果 用 #service httpd start 命令去啟動apache 會報 httpd service not found錯誤.
在Linux下用原始碼方式編譯安裝完Apache後,啟動關閉Apache可以通過如下命令實現:
/usr/local/apache/bin/apachectl start | stop | restart
如果出現 ttpd: Could not reliably determine the server‘s fully qualified domain name 錯誤 ,需要修改 設定檔裡面的 ServiceName
解決步驟: vi /usr/local/apache/conf/http.conf 將裡面的#ServerName exampleName:80注釋去掉,改成ServerName localhost:80即可
再次啟動服務:/usr/local/apache/bin/apachectl restart
然後可以通過瀏覽器訪問http://localhost:80,如果頁面顯示“It works!”,即表示apache已安裝並啟動成功。
step6 把apache加入linux服務自啟動中
如果想將httpd列入系統自動啟動的服務,可以直接將上述的apachectl檔案拷貝到 /etc/rc.d/init.d 中,然後在相應的啟動層級如3,5中加入連結即可。命令如下:
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd
ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S61httpd
連結檔案的S61是啟動時的序號。當init.d目錄下有httpd指令碼後,我們就可以通過service命令來啟動關閉apache了。在任意路徑下執行:
service httpd start | stop | restart
指令碼中沒有輸入提示資訊,但命令已經執行了。這時有個問題就是:雖然apache已經可以自動啟動,但在linux的服務列表中卻看不到它,比如運行 ntsysv或紅帽子的chkconfig --list指令。要添加服務,一般通過chkconfig --add xxx來實現,但需要指令碼中有相應的資訊才行,否則chkconfig就會提示:xxx 服務不支援 chkconfig。所以我們首先編輯httpd指令碼,在第2行添加如下注釋資訊:
# chkconfig: 35 61 61
# description: Apache
第一行的3個參數意義分別為:在哪些運行層級啟動httpd(3,5);啟動序號(S61);關閉序號(K61)。注意:第二行的描述必須要寫!
儲存後執行:chkconfig --add httpd
就將httpd添加入服務了。在rc3.d、rc5.d路徑中將來就會出現S61httpd的連結,其他運行層級路徑中會出現K61httpd的連結。
運行chkconfig --list就可以看到httpd的服務了。
step7 配置/usr/local/apache/conf下的http.conf檔案(先備份)。備份:#cp /usr/local/apache/conf/http.conf /usr/local/apache/conf/http.conf.bak
然後 vi /usr/local/apache/conf/http.conf 修改內容如下:
編輯httpd,在第二行加入如下資訊:
# chkconfig: 345 85 15
# description: Activates/Deactivates Apache Web Server
以上兩句必須添加,否則會提示“httpd服務不支援”;第一行3個數字參數意義分別為:哪些Linux層級需要啟動httpd(3,4,5);啟動序號(85);關閉序號(15)。
step8 添加啟動資訊(Ubuntu與CentOS有區別)
chkconfig –add httpd
查看是否添加成功
chkconfig --list
至此,apache安裝就成功了,並且也把apache加入開機啟動了。
然後可以通過瀏覽器訪問http://localhost:80,如果頁面顯示“It works!”,即表示apache已安裝並啟動成功。
linux 源碼解壓安裝apache