CentOS下安装Apache步骤详解
一、实验环境
Linux: CentOS release 6.7 (Final)
Apache: httpd-2.4.23.tar.gz
VMware: VMware 10.0
宿主机: Win10 x64
二、Apache介绍
Apache一款 Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。同时Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族。
三、安装包下载及其环境要求
Apache所需依赖环境有 apr、apr-util、pcre,还有编译源码需要的gcc和gcc-c++,下图所示安装包下载地址和我使用的版本
安装包 |
下载地址 |
我下载使用的版本 |
apache |
http://httpd.apache.org/download.cgi |
httpd-2.4.23.tar.gz |
apr |
http://apr.apache.org/ |
apr-1.5.2.tar.gz |
apr-util |
http://apr.apache.org/ |
apr-util-1.5.4.tar.gz |
pcre |
http://www.pcre.org/ |
pcre-8.39.tar.gz |
注意:gcc和gcc-c++使用rpm或者yum方式安装,pcre下载的时候一定要看清楚是pcre还是pcre2,因我下载了pcre2,安装了好几次都失败,最后发现是因为安装包下载错误。
强烈建议看一下官方文档:http://httpd.apache.org/docs/2.4/install.html
四、安装过程
1、配置CentOS-Base.repo, 安装gcc、gcc-c++,配置网络yum源的方法(http://blog.chinaunix.net/uid-23683795-id-3477603.html),配置完成后执行:
[root@localhost~]# yum -y install gcc [root@localhost~]# yum -y install gcc-c++
2、安装依赖包和Apache HTTPServer
2.1使用FTP工具上传httpd、apr、apr-util、pcre压缩包至/usr/local/mypackages/
[root@localhost~]# cd /usr/local/mypackagers/ [root@localhostmypackagers]# ls apr-1.5.2.tar.gzapr-util-1.5.4.tar.gz httpd-2.4.23.tar.gz pcre-8.39.tar.gz
2.2安装apr
[root@localhost mypackagers]# tar xvf apr-1.5.2 [root@localhost mypackagers]# cd apr-1.5.2 [root@localhost mypackagers]#./configure --prefix=/usr/local/apr [root@localhost mypackagers]#make && install
2.3安装apr-util
[root@localhost mypackagers]# tar xvf apr-util-1.5.4.tar.gz [root@localhost mypackagers]# cd apr-util-1.5.4 [root@localhost mypackagers]#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr [root@localhost mypackagers]#make && install
2.3安装pcre
[root@localhost mypackagers]# tar xvf pcre-8.39.tar.gz [root@localhost mypackagers]# cd pcre-8.39 [root@localhost pcre-8.39]# ./configure --prefix=/usr/local/pcre [root@localhost pcre-8.39]# make && make install
2.4安装httpd
[root@localhost mypackagers]#tar xvf httpd-2.4.23.tar.gz [root@localhost mypackagers]# cd httpd-2.4.23 [root@localhost httpd-2.4.23]# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre/ [[email protected]]#make && make install
五、启动和设置开机自启
1、开放80端口或关闭防火墙,详见下面防火墙配置,启动apache服务:
[root@localhost ~]# /usr/local/apache/bin/apachectl start
浏览器输入:http://IP地址:80,出现It works!证明Apache已经安装成功。
2、设置开机自启动
echo"/usr/local/apache/bin/apachectl start" >> /etc/rc.d/rc.local
六、安装启动过程排错
1、configure:error: APR / APR-util not found. Pleaseread the documentation.表示apr/apr-util没有安装,先安装apr,再安装apr-util,因为apr-util依赖apr,安装apr和apr-util之前需安装gcc工具,否则会提示configure: error: no acceptable C compiler found in $PATH.
2、configure: error: pcre-config forlibpcre not found. PCRE is required and available from http://pcre.org/,是因为pcre没有安装,安装pcre之前需要先安装gcc-c++,否则会提示configure: error: You need aC++ compiler for C++ support.
3、ServerName服务器域名
[root@localhost~]# /usr/local/apache/bin/apachectl start AH00558:httpd: Could not reliably determine the server's fully qualified domain name,using::1. Set the 'ServerName' directive globally to suppress this message [root@localhost conf]# cd /usr/local/apache/conf/ [root@localhost conf]# vi httpd.conf
在#ServerName www.example.com:80下增加一条 ServerName localhost:80
4、端口占用
[root@localhost~]# /usr/local/apache/bin/apachectl start httpd(pid 38477) already running [root@localhost~]# ps aux | grep httpd [root@localhost~]# kill -9 38477 //有好几个进程,依次进行kill [root@localhost~]# /usr/local/apache/bin/apachectl start
5、防火墙开放80端口或直接关闭防火墙
如Apache后台服务已启动,但是浏览器访问不了,可能由于防火墙阻挡,两种方式解决:
5.1开放80端口,推荐使用
[root@localhost ~]# iptables -I INPUT -p tcp --dport 80 -jACCEPT //开放80端口 [root@localhost ~]# service iptables save //保存策略 iptables: Saving firewall rules to/etc/sysconfig/iptables:[ OK ] [root@localhost ~]# service iptables status //有下面一行证明80端口已开放 1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
5.2关闭防火墙,并设为防火墙开启不启动
[root@localhost~]# service iptables stop //关闭防火墙 iptables:Setting chains to policy ACCEPT: filter [ OK ] iptables:Flushing firewall rules: [ OK ] iptables:Unloading modules: [ OK ] [root@localhost~]# chkconfig |grep iptables //2345为on表示开机自启 iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off [root@localhost~]# chkconfig iptables off //设置iptables开机不自启 [root@localhost~]# chkconfig |grep iptables //2345为off为开机不自启 iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off
-----葱花子 2016-12-20
-----转载请注明出处 http://myitpp.blog.51cto.com