前言
扯上兩句:Apache固然是一款功能強大的Web服務器,作爲老司機,一直具有相當高的市場佔有率。 雖然在高併發性能上不如Nginx,但是因爲入道早,所以有着完善的功能、非常出色的穩定性等優點。
當然也有很多網站使用LANMP組合,Nginx處理靜態請求,Apache+PHP處理動態請求,從而利用各自的特點,實現了訪問的動靜分離。今天天色已晚,就只說說Apache的安裝和使用
一丶下載Apache
可以去官網 http://httpd.apache.org/ 下載自己所需要的版本,需要注意的是有些版本需要依賴 apr 和 apr-util 官網也可以下載http://apr.apache.org/download.cgi 也可以使用以下路徑下載
[root@localhost ~]#
wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.38.tar.gz
[root@localhost ~]#wget http://mirrors.shu.edu.cn/apache//apr/apr-1.6.5.tar.gz
[root@localhost ~]#wget http://mirrors.shu.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
如果 wget 命令沒找到 用 yum install wget 進行添加
[root@localhost ~]#
yum -y install wget
最好創建一個目錄,把下載的資源移動到目錄當中,這樣便於以後擴展
使用 mkdir 命令可以創建目錄
[root@localhost ~]#
mkdir lnmp
把下載的文件 使用 mv 命令剪切移動到 lnmp 目錄當中,可以使用以下快捷方法
[root@localhost ~]#
mv *tar.gz lnmp
使用 tar zxvf 命令對壓縮包進行解壓
[root@localhost ~]#
tar zxvf httpd-2.4.38.tar.gz
[root@localhost ~]#tar zxvf apr-1.6.5.tar.gz
[root@localhost ~]#tar zxvf apr-util-1.6.1.tar.gz
把 apr-1.6.5 和 apr-util-1.6.1 兩個依賴目錄移動到 httpd-2.4.38 指定的 srclib 目錄當中
[root@localhost ~]#
mv apr-1.6.5 httpd-2.4.38/srclib/apr
[root@localhost ~]#mv apr-util-1.6.1 httpd-2.4.38/srclib/apr-util
二丶安裝Apache
安裝依賴命令
[root@localhost ~]#
yum -y install gcc gcc-c++ expat-deve
l
[root@localhost ~]#yum -y install pcre-devel openssl-devel
進入 httpd-2.4.38 目錄進行編譯安裝
--prefix
程序安裝位置 默認:/usr/local/apache2--enable-so
開啓DSO,動態共享對象,後面添加模塊用--enable-deflate
開啓支持壓縮--enable-ssl
開啓ssl支持--enable-rewrite
開啓重寫支持
[root@localhost ~]#
cd httpd-2.4.38
[root@localhost ~]#./configure --enable-so --enable-deflate --enable-ssl --enable-rewrite
[root@localhost httpd-2.4.38]#make && make install
進入安裝目錄,需要注意的是有些版本的目錄名有可能不是apache2而是httpd
[root@localhost httpd-2.4.38]#
cd /usr/local/apache2
三丶查看Apache是否安裝
啓動Apache
[root@localhost apache2]#
/usr/local/apache2/bin/apachectl start
初次啓動會報錯
解決方案,找到 apache 安裝後的主配置文件 httpd.conf 編輯 httpd.conf 文件
[root@localhost apache2]#
vim /usr/local/apache2/conf/httpd.conf
用:/ 搜索 #ServerName,添加 ServerName localhost:80 ,再重新啓動 Apache 即可
[root@localhost apache2]#
/usr/local/apache2/bin/apachectl restart
注意你是CentOS7版本,默認防火牆是firewalld.添加80端口如下:
(–permanent永久生效,沒有此參數重啓後失效)
[root@localhost ~]#
firewall-cmd --zone=public --add-port=80/tcp --permanent
[root@localhost ~]#firewall-cmd --reload
查看 apache 是否啓動使用 ps aux | grep httpd 命令
[root@localhost ~]#
ps aux | grep httpd