源码编译安装Apache
实验环境:
一台Liunx服务器,和一台客户机(windows,linux都可以),或者只使用本机访问验证也可以
实验目的:
安装apacheWeb服务,来达到搭建web应用,使用户通过网络访问到web页面
实验步骤:
第一步:将需要用tar解包的三个tar包拖到虚拟机。apr和apr-util用来调整并发量的工具
第二步:配置ip
vim /etc/sysconfig/network-scripts/ifcfg-ens33
进入网卡的配置文件
bootproto=dhcp改为bootproto=static
onboot=no改为onboot=yes
添加以下两项
IPADDR=192.168.1.1
NETMASK=255.255.255.0
如果有网关和dns在添加GATEWAY=
和DNS1=
退出保存
重启网络服务:systemctl restart network
使用ifconfig ens33验证ip是否配置成功
第三步:配置本地yum源(自动解决依赖关系)
因为是实验环境,所以将系统自带的yum源删除,挂载本地光盘的yum源,如果是生产环境使用网络yum或者将其他的yum源在yum.repo.d目录下新建一个目录放入进去
这里以实验环境为主
删除本地yum源:rm -rf /etc/yum.repos.d/*
新建yum源:vim /etc/yum.repos.d/FeiYi.repo
//这里注意新建的yum源名字自拟,虽然linux不识别后缀,但是必须加.repo
在FeiYi.repo中添加以下内容
[FeiYi]
name=FeiYi
baseurl=file:///media/dvd //本地yum源这里需要三个‘/’,两个是file后面跟着的格式,1个是代表根
// /media/dvd是光盘的rpm的挂载路径
enabled=1 //是否使用yum源
gpgcheck=0 //是否检测匹配密钥
第三步:挂载光盘
mkdir /media/dvd //创建光盘挂载路径
mount /dev/cdrom /meida/dvd //将光盘内容挂载到dvd中
第四步:使用yum解决安装Apache必要的依赖关系
[root@localhost ~]# yum -y install pcre-devel openssl-devel zlib-devel (解决依赖关系)
第五步:使用tar解包apr和apr-util并编译
[root@localhost ~]# tar zxf apr-1.5.2.tar.gz -C /usr/src //解压到/usr/src目录下
[root@localhost ~]# cd /usr/src/apr-1.5.2 //进入目录进行配置
[root@localhost apr-1.5.2]# ./configure --prefix=/usr/local/apr //指定安装路径
如果在这一步报错:rm: cannot remove 'libtoolT': No such file or directory
进入当前目录下的configure脚本文件中找到$RM “cfgfile”,在前面加一个#即可,保存后,重新运行./configure --prefix=/usr/local/apr
[root@localhost apr-1.5.2]# make && make install //编译安装一起执行
[root@localhost ~]# tar zxf apr-util-1.5.4.tar.gz -C /usr/src //解压apr-util
[root@localhost ~]# cd /usr/src/apr-util-1.5.4/
[root@localhost apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config && make -j 4 && make install
//配置指定apr-util的安装路径,并指向apr的路径
[root@localhost apr-util-1.5.4]# ln -s /usr/local/apr-util/bin/* /usr/local/bin //优化命令路径
第六步:使用tar解包httpd(Apache)
[root@localhost ~]# tar zxf httpd-2.4.38.tar.gz -C /usr/src //解压到/usr/src目录下
[root@localhost ~]# cd /usr/src/httpd-2.4.38/ && ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-ssl && make -j 4 && make install
使用&&将多条从命令连接起来
[root@localhost httpd-2.4.25]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
配置项解释:
–prefix:安装到的目录
–enable-so:动态加载模块支持,httpd的扩展功能的能力
–enable-rewrite:动态网页地址重写,网站优化及目录迁移
–enable-charset-lite:字符集。支持显示各种编码字符。如:uniconde国际字符等
–enable-cgi:通用网关接口/图形化接口,兼容各种应用程序,便于扩展网站的应用访问能力
–enable-socktes:启用接口,80被占用的情况下,会改变其端口号继续访问
第七步:添加httpd为系统服务
以便使用chkconfig进行管理httpd,需要将服务脚本复制到/etc/init.d/httpd路径,并在文件中的开头添加chkconfig识别配置
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
vim /etc/init.d/httpd
添加以下内容:
#chkconfig: 35 25 25 //35表示在3和5的init级别可以允许httpd服务,图形界面和命令行界面
将httpd添加为系统服务:chkconfig --add httpd
将httpd服务设置为开机自启:chkconfig httpd on
启动Apache服务:systemctl start httpd
第八步:使用同一网卡网段的客户机来访问apahce服务器的ip,来获取默认页面
firefox http://192.168.1.1
火狐浏览器访问
lynx http://192.168.1.1
lynx浏览器访问
curl http://192.168.1.1