WEB服務器----Apache 安裝配置

一、官網下載須要的安裝包(包括主安裝包和依賴包的下載)能夠直接使用Linux的wget進行下載:html

httpd安裝包下載地址:http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.29.tar.gz
arp安裝包下載地址:http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.6.3.tar.gz
arp-util安裝包下載地址:http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
pcre安裝包下載地址:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz

 咱們可使用wget的邪惡方法,實現批量下載這幾個文件,首先把這幾個連接地址放到一個文件中:好比software.txtc++

http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.29.tar.gz
http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.6.3.tar.gz
http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
software.txt

 而後使用wget的方法下載這個文件中的地址安裝包:正則表達式

wget -i software.txt

 二、下載完成後就要開始解壓下載下來的安裝包了,咱們也使用一個快速的方法對下載下來的這四個包進行批量解壓:apache

ls *.tar.gz | xargs -n1 tar zxf 

解壓完成後的目錄裏面有下面這些文件:vim

[root@BrianZhu software]# ll
total 12060
drwxr-xr-x 27 1001  1001    4096 Oct 18 22:50 apr-1.6.3
-rw-r--r--  1 root root  1072661 Oct 23 01:33 apr-1.6.3.tar.gz
drwxr-xr-x 20 1001  1001    4096 Oct 18 22:51 apr-util-1.6.1
-rw-r--r--  1 root root   554301 Oct 23 01:33 apr-util-1.6.1.tar.gz
drwxr-xr-x 11  501 games    4096 Oct 18 02:53 httpd-2.4.29
-rw-r--r--  1 root root  8638793 Oct 21 03:39 httpd-2.4.29.tar.gz
drwxr-xr-x  7 1169  1169    4096 Nov 23  2015 pcre-8.38
-rw-r--r--  1 root root  2053336 Mar 13 11:05 pcre-8.38.tar.gz
-rw-r--r--  1 root root      267 Mar 13 11:03 software.txt

 三、建立用戶:瀏覽器

  首先咱們先要建立一個Apache的專屬用戶,用戶名是:httpd(可自定義) bash

[root@BrianZhu software]# groupadd httpd
[root@BrianZhu software]# useradd -g httpd -s /sbin/nologin -M httpd

四、對主安裝包和依賴包進行源碼安裝:ssh

爲了防止在安裝是時候出現一些沒必要要的錯誤,咱們在安裝的時候最好是按照依賴包主安裝包的順序來安裝:tcp

apr --> apr-util --> pcre --> httpd

 在安裝以前要檢查一下C++的環境有沒有安裝成功ide

[root@BrianZhu software]# rpm -qa gcc gcc-c++     # 檢查
[root@BrianZhu software]# yum -y install gcc gcc-c++ expat-devel  # 安裝  

 源碼安裝apr軟件包:

[root@BrianZhu software]# cd apr-1.6.3/    # 切換到解壓好的目錄
[root@BrianZhu apr-1.6.3]# ./configure --prefix=/usr/local/apr && make && make install  # 配置指定路徑、編譯、編譯安裝

 源碼安裝apr-util軟件包:

[root@BrianZhu software]# cd apr-util-1.6.1/  # 切換解壓好的目錄
[root@BrianZhu apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config && make && make install # 配置路徑,指定apr的安裝路徑 、編譯、編譯安裝

 源碼安裝pcre軟件包:

[root@BrianZhu software]# cd pcre-8.38/   # 切換解壓好的目錄
[root@BrianZhu pcre-8.38]# ./configure --prefix=/usr/local/pcre && make && make install  # 配置指定路徑、編譯、編譯安裝

 源碼安裝httpd軟件包:

[root@BrianZhu software]# cd httpd-2.4.29/  # 切換解壓好的目錄
[root@BrianZhu httpd-2.4.29]# ./configure --prefix=/usr/local/apache/ --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/ && make && make install  # 指定安裝和依賴包路徑、編譯、編譯安裝

 安裝過程無報錯說明安裝成功,安裝完成後會在/usr/local/下面有個apache目錄 

[root@BrianZhu /]# cd /usr/local/
[root@BrianZhu local]# ll
total 56
drwxr-xr-x  14 root root 4096 Mar 13 11:56 apache   # 咱們編譯安裝好的Apache
drwxr-xr-x   6 root root 4096 Mar 13 11:39 apr      # 編譯安裝的依賴包
drwxr-xr-x   5 root root 4096 Mar 13 11:48 apr-util # 編譯安裝的依賴包
drwxr-xr-x.  2 root root 4096 Aug 12  2015 bin
drwxr-xr-x.  2 root root 4096 Aug 12  2015 etc
drwxr-xr-x.  2 root root 4096 Aug 12  2015 games
drwxr-xr-x.  2 root root 4096 Aug 12  2015 include
drwxr-xr-x.  2 root root 4096 Aug 12  2015 lib
drwxr-xr-x.  2 root root 4096 Aug 12  2015 lib64
drwxr-xr-x.  2 root root 4096 Aug 12  2015 libexec
drwxr-xr-x   6 root root 4096 Mar 13 11:51 pcre     # 編譯安裝的依賴包
drwxr-xr-x.  2 root root 4096 Aug 12  2015 sbin
drwxr-xr-x.  5 root root 4096 May 23  2017 share
drwxr-xr-x.  2 root root 4096 Aug 12  2015 src

 在安裝的過程當中咱們使用./configure的時候跟了不少的額外編譯參數,下面咱們來講一下在安裝Apache的經常使用參數:

Apache ./configure的經常使用參數
 選項  意義
--enable-so  啓用動態裝載模塊功能
--enable-ssl  啓用ssl功能。注意要先安裝
--enable-cgi  啓用cgi功能
--enable-rewrite  啓用URL重定向功能
--enable-modules=[all | most | ……]  指定啓用哪些模塊。可指定具體的模塊名,也可以使用all表示啓用全部模塊,most表示啓用大多數經常使用模塊。通常使用most便可
--enable-mpms-shared=[prefork | worker | event | all]   指定編譯哪些MPM模塊。可以使用all表示全編譯
--with-mpm=[prefork | worker | event]  如3種MPM模塊都編譯了,則經過此項指定默認使用哪一種
--with-zlib  依賴zlib庫用於頁面壓縮
--with-pcre  依賴pcre庫用於解決正則表達式問題。
--with-apr=PATH  指定依賴的apr路徑。注意必須指明路徑,不然編譯時會自動去找/usr下的apr,而不是編譯的高版本apr,下同
--with-apr-util=PATH  指定依賴的apr-util路徑
--sysconfdir=PATH  指定配置文件在安裝在哪一個路徑。如不指定,配置文件就在程序安裝的目錄;如指定/etc目錄,注意起個別的名字,不要覆蓋httpd2.2的

 

 在apache這個目錄下面有不少子目錄,咱們來簡單說一下這些目錄都是幹什麼的:

[root@BrianZhu local]# cd apache/
[root@BrianZhu apache]# ll
total 56
drwxr-xr-x  2 root root  4096 Mar 13 11:56 bin     # 程序命令目錄
drwxr-xr-x  2 root root  4096 Mar 13 11:56 build   # 目錄存放的是編譯過程當中產生的文件
drwxr-xr-x  2 root root  4096 Mar 13 11:56 cgi-bin 
drwxr-xr-x  4 root root  4096 Mar 13 11:59 conf    # 配置文件目錄
drwxr-xr-x  3 root root  4096 Mar 13 11:56 error   # 記錄了各錯誤頁面內容。404等錯誤頁面就放在這裏,報錯時顯示的就是這些頁面內容
drwxr-xr-x  2 root root  4096 Oct 18 02:53 htdocs  # 網頁文件放置位置。
drwxr-xr-x  3 root root  4096 Mar 13 11:56 icons   
drwxr-xr-x  2 root root  4096 Mar 13 11:56 include  
drwxr-xr-x  2 root root  4096 Mar 13 11:56 logs    # 日誌。httpd的pid文件也在此目錄
drwxr-xr-x  4 root root  4096 Mar 13 11:56 man     # man手冊
drwxr-xr-x 14 root root 12288 Oct 18 02:53 manual  # 官方文檔
drwxr-xr-x  2 root root  4096 Mar 13 11:56 modules # 各模塊

五、如今咱們來啓動Apache服務,並測試是否安裝成功:

咱們能夠先對配置文件作個簡單的修改,修改的文件和配置參數以下:

[root@BrianZhu /]# cd /usr/local/apache/conf/   # 切換到配置文件目錄
[root@BrianZhu conf]# vim httpd.conf             #修改配置文件(主要修改「Listen」和「ServerName」屬性)

 修改後咱們可使用命令對配置文件進行檢查

./bin/apachectl configtest     # 沒有問題會顯示 Syntax OK

 啓動Apache服務:

/usr/local/apache/bin/apachectl start | stop | restart
或者
cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
/etc/init.d/httpd start

 檢查是否啓動成功:

[root@BrianZhu conf]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      943/sshd            
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      896/master          
tcp6       0      0 :::80                   :::*                    LISTEN      82232/httpd     # 啓動成功      
tcp6       0      0 :::22                   :::*                    LISTEN      943/sshd            
tcp6       0      0 ::1:25                  :::*                    LISTEN      896/master          
udp        0      0 0.0.0.0:11714           0.0.0.0:*                           548/dhclient        
udp        0      0 0.0.0.0:68              0.0.0.0:*                           548/dhclient        
udp        0      0 127.0.0.1:323           0.0.0.0:*                           904/chronyd         
udp6       0      0 ::1:323                 :::*                                904/chronyd         
udp6       0      0 :::30037                :::*                                548/dhclient    

 瀏覽器檢查:

就此安裝完成!!!

安裝完成後,那咱們怎麼使用呢?

  點擊這裏  進入Apache的學習世界

相關文章
相關標籤/搜索