postfix安装(二)-- apache

安装apache有点曲折,主要是apr导致的

安装包: httpd-2.4.1.tar.bz2

下载地址:http://www.apache.org

首先要定义一个完整的主机名 : 

否则在启动apache的时候会有这样的报错:

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using ::1. Set the 'ServerName' directive globally to suppress this message

编辑 /etc/sysconfig/network 文件,然后重启才能生效

开始安装

]# chmod +x httpd-2.4.1.tar.bz2

]# tar jxf httpd-2.4.1.tar.bz2 

]# cd httpd-2.4.1
]# ./configure --prefix=/usr/local/apache
checking for APR... no
configure: error: APR not found.  Please read the documentation.


发现没有安装apr相关包,然后就用yum批量安装
]# yum install apr apr-util apr-devel apr-util-devel apr-util-mysql -y


再次运行configure出现这个报错:
checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/


解救措施就是安装pcre相关包
]# yum install pcre pcre-devel pcre-static -y


]# rpm -qa |grep pcre
pcre-7.8-3.1.el6.x86_64
pcre-devel-7.8-3.1.el6.x86_64


]# make
rotatelogs.c:(.text+0x5ed): undefined reference to `apr_file_link'
collect2: ld returned 1 exit status
make[2]: *** [rotatelogs] Error 1


检查apr包是否已经安装,事实证明已经安装过了
[root@Webmail httpd-2.4.1]# rpm -qa |grep apr
apr-1.3.9-3.el6.x86_64
apr-util-1.3.9-3.el6.x86_64
apr-devel-1.3.9-3.el6.x86_64
apr-util-devel-1.3.9-3.el6.x86_64
apr-util-ldap-1.3.9-3.el6.x86_64

试了几次都是同样的报错,把rpm包都卸载了,安装apr源码包

apr-1.3.8.tar.gz
apr-util-1.3.8.tar.gz

安装apr-util的时候需要指定apr的路径 --with-apr=/usr/local/apr


重新安装apache

./configure --prefix=/usr/local/apache --with-apr-util=/usr/local/apr-util

在make install的时候,SB错误又出现了

.libs/rotatelogs.o: In function `post_rotate':
/home/software/httpd-2.4.1/support/rotatelogs.c:298: undefined reference to `apr_file_link'
collect2: ld returned 1 exit status


看来不是apr包的问题了,难道是哪个地方没有配置么 ?

]# ./configure --prefix=/usr/local/apache/ --with-apr=/usr/local/apr/bin/apr-1-config --with-lib=/usr/local/apr/lib/ --with-apr-util=/usr/local/apr-util/

再续!!!!

今天又回来继续这个问题

我把apr和apr-util全都make clean然后删掉安装路径相关的文件/usr/local/apr

在apache官方网站上重新下载的apr包 apr-util包和httpd包

http://mirror.bit.edu.cn/apache//apr/

 apr-1.4.5.tar.gz 

 apr-util-1.3.8.tar.gz


http://mirror.bit.edu.cn/apache//httpd/

httpd-2.4.1.tar.gz   

在中途中除了遇到这样一个蹩脚错误,我也不知道什么原因导致的,就用yum install libtool -y 就ok了

info.lo   -lrt -lcrypt  -lpthread
libtool: link: `strings/apr_strings.lo' is not a valid libtool object
make: *** [libapr-1.la] 错误 1
[root@Webmail apr-1.4.5]# libtool: link: `strings/apr_strings.lo' is not a valid libtool object
make[1]: *** [libapr-1.la] 错误 1
make[1]: Leaving directory `/home/software/apr-1.4.5'
make: *** [all-recursive] 错误 1


重新整理一下安装思路:

安装环境:

]# yum install libtool apr apr-util apr-devel apr-util-devel apr-util-mysql  pcre pcre-devel pcre-static -y

安装apr

./configure --prefix=/usr/local/apr

make && make install


安装apr-util

./configure --with-apr=/usr/local/apr

make && make install


安装http

./configure --prefix=/usr/local/apache  --with-apr=/usr/local/apr/bin/apr-1-config --with-lib=/usr/local/apr/lib

make && make install


如果apr和apr安装完整的话,再安装http,应该没问题,我觉得我的apr和apr-util没有安装完整

功夫不负有心人哟,O(∩_∩)O

-------------------------------------------------------

]# cp /home/software/httpd-2.4.1/support/apachectl /etc/init.d/httpd

开机自启动

将service httpd start 加入文件 /etc/rc.d/rc.local

启动服务

]# service httpd 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

]# ps aux |grep http
root      8571  0.0  0.1  71228  2588 ?        Ss   17:03   0:00 /usr/local/apache/bin/httpd -k start
daemon    8572  0.0  0.2 415488  4460 ?        Sl   17:03   0:00 /usr/local/apache/bin/httpd -k start
daemon    8573  0.0  0.2 415488  4464 ?        Sl   17:03   0:00 /usr/local/apache/bin/httpd -k start
daemon    8574  0.0  0.2 415488  4468 ?        Sl   17:03   0:00 /usr/local/apache/bin/httpd -k start
root      8658  0.0  0.0 105388   888 pts/0    S+   17:03   0:00 grep http

]# netstat -anpt |grep 80
tcp        0      0 :::80                       :::*                        LISTEN      8571/httpd 


另外chkconfig不支持httpd,那么可以用以下方式实现开机自动启动:

]# vi /etc/init.d/httpd   在#/bin/sh下加入下列两行

       #chkconfig:2345 57 57

       #description:Apache

    PS:开头必须得加#,要不然还是不支持chkconfig


]# ln -s /etc/init.d/httpd /etc/rc.d/rc2.d/S57httpd

]# ln -s /etc/init.d/httpd /etc/rc.d/rc53d/S57httpd

]# ln -s /etc/init.d/httpd /etc/rc.d/rc4.d/S57httpd

]# ln -s /etc/init.d/httpd /etc/rc.d/rc5.d/S57httpd

]# chkconfig --add httpd

]# chkconfig --list |grep httpd



检测服务

然后在本机的浏览器地址栏中输入localhost:80,看一下是否显示“It Works”的提示





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值