实验环境
使用Linux的系统为CentOS6.5 x64
安装Apache所需要的源码包有
httpd-2.4.16.tar.gz
apr-1.5.2.tar.gz
apr-util-1.5.4.tar.gz
下载地址:http://pan.baidu.com/s/1skcEHFB
实验配置
首先安装如下编译工具以及软件包
[root@CentOS-3 ~]# yum -y install gcc gcc-c++ make pcre-devel
编译安装apr和apr-util这两个包
[root@CentOS-3 ~]# mkdir /usr/local/apr
[root@CentOS-3 ~]# mkdir /usr/local/apr-util
将这个两个包解压到对应的目录
[root@CentOS-3 ~]# tar xf /mnt/apr-1.5.2.tar.gz -C /usr/local/apr
[root@CentOS-3 ~]# tar xf /mnt/apr-util-1.5.4.tar.gz -C /usr/local/apr-util
[root@CentOS-3 ~]# cd /usr/local/apr/apr-1.5.2/ //切换至源码目录下
执行./configure 对软件定义模块
[root@CentOS-3 apr-1.5.2]# ./configure --prefix=/usr/local/apr //指定安装路径
[root@CentOS-3 apr-1.5.2]# make && make install //编译并且安装
切换至apr-util源码目录
[root@CentOS-3 apr-1.5.2]# cd /usr/local/apr-util/apr-util-1.5.4/
[root@CentOS-3 apr-util-1.5.4]# ./configure \
> --prefix=/usr/local/apr-util \ //指定安装路径
> --with-apr=/usr/local/apr/bin/apr-1-config //指定apr包所在路径
[root@CentOS-3 apr-util-1.5.4]# make && make install
创建Apahce目录
[root@CentOS-3 ~]# mkdir /usr/local/apache
[root@CentOS-3 ~]# tar xf /mnt/httpd-2.4.16.tar.gz -C /usr/local/apache/
//将源码包解压到对应目录下
[root@CentOS-3 ~]# cd /usr/local/apache/httpd-2.4.16/ //切换至对应目录
订制模块
[root@CentOS-3 httpd-2.4.16]# ./configure \
> --prefix=/usr/local/apache \ //指定安装目录
> --enable-so \ //启用动态加载模块支持
> --enable-rewrite \ //启用网页地址重写功能,用于网站优化目录迁移
> --enable-mods-shared=most \ //告诉编译器将所有标准模块都动态编译为DSO模块。
> --with-mpm=worker \ //让apache以worker方式运行
> --disable-cgid \ //禁止用一个外部 CGI 守护进程执行CGI脚本
> --disable-cgi \ //禁止编译 CGI 版本的 PHP
> --with-apr=/usr/local/apr \ //指定apr目录
> --with-apr-util=/usr/local/apr-util //指定apr-util目录
[root@CentOS-3 httpd-2.4.16]# make && make install
创建一个软链接将apache加入$PATH路径中去
[root@CentOS-3 httpd-2.4.16]# ln -s /usr/local/apache/bin/* /usr/local/bin/
执行如下操作让apache支持service启动
[root@CentOS-3 ~]# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
编辑/etc/init.d/httpd,加入如下内容
# chkconfig: 2345 85 15
# description: Apache is a World Wide Web server.
[root@CentOS-3 ~]# chkconfig --add httpd
编辑Apache的配置文件:
[root@CentOS-3 ~]# vim /usr/local/apache/conf/httpd.conf
搜索Listen可以修改监听端口,默认监听TCP 80 端口
搜索DocumentRoot可以修改网页文件默认存放路径,默认存放在apahce安装目录下的htdocs目录中
搜索ServerName在如下位置添加一行,由于没有配置DNS无法解析域名写入主机名即可(不写也没关系,启动时候会报个错不影响正常运行):
保存退出启动服务
[root@CentOS-3 ~]# service httpd start
使用netstat可以过滤80端口有没有正常监听
[root@CentOS-3 ~]# netstat -anpt | grep 80
tcp 0 0 :::80 :::* LISTEN 31176/httpd
用真机去访问服务器测试Apache是否工作正常
[root@CentOS-3 ~]# service iptables stop //关闭防火墙
[root@CentOS-3 ~]# setenforce 0 //关闭selinux
由于没配置DNS服务器直接输入IP地址即可访问
Apache虚拟目录以及虚拟主机设置:http://sunjie123.blog.51cto.com/1263687/1735865