1.下载apache源码压缩包
http://mirror.bit.edu.cn/apache/httpd/
2.使用WinScp把源码包放入虚拟机
/root/httpd-2.2.32.tar.gz
3.在当前目录下解压
tar -zxvfhttpd-2.2.32.tar.gz
4.进入解压后的文件夹httpd-2.2.32中
5.首先安装apr
[root@localhost httpd-2.2.32]# cd srclib/apr
[root@localhost apr]# ./configure --prefix=/usr/local/apr
[root@localhost apr]# make && make install
6.安装Apr-util
[root@localhost httpd-2.2.32]# cd srclib/apr-util
[root@localhost apr-util]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@localhost apr-util]# make && make install
7.安装Apache
[[email protected]]# ./configure --prefix=/usr/local/apache --enable-deflate --enable-expires --enable-headers --enable-modules=most --enable-so --with-mpm=worker --enable-rewrite --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
8.启动Apache服务
/usr/local/apache/bin/apachectl start
出现错误:
Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName
解决方法:
修改/usr/local/apache/conf/httpd.conf文件
ServerName www.example.com:80
ServerName localhost:80
9.查看服务是否启动
ps aux | grep httpd
10.在主机通过虚拟机ip访问apache页面
在浏览器输入虚拟机ip
默认显示的网页是 /usr/local/apache/htdocs/index.html
出现错误:无法访问该网页
解决方法:
1.先确定虚拟机可不可以访问外网,可通过ping www.baidu.com测试,如果不行,配置好ip相关信息
2.主机与虚拟机通过各自ip互ping ,如果主机可以ping虚拟机,而虚拟机却不可以ping主机,考虑下是不是主机电脑防火墙没有关,很多情况是这个原因,关闭防火墙可以解决
3.如果以上都没问题,还是没能解决,则可能是iptable的限制。通过如下命令把tcp的80端口配置为允许任何ip访问就可以
iptables -I INPUT -p TCP --dport 80 -j ACCEPT
可能出现错误:
service iptables save 指令使用失败
解决方法:
1.在控制台使用iptables命令随便写一条防火墙规则,如:
iptables -P OUTPUT ACCEPT
2.使用
service iptables save
进行保存,默认就保存到了/etc/sysconfig目录下的iptables文件中
3.只是临时生效,要想重启后生效,输入
vi /etc/selinux/config
会打开vi编辑器 修改文件:将
SELINUX=enforcing
这一行注释掉,并且加上一行,如下
SELINUX=enforcing
SELINUX=disabled
再保存,后继续输入命令:
chkconfig --level 3 iptables off
chkconfig --level 5 iptables off
之后重启linux,生效,就可以了