Linux编译安装apache

本文详细介绍了在Linux环境下编译安装Apache HTTP Server的步骤,包括安装依赖、下载源码、配置参数、解决编译错误以及启动、停止和重启服务器的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装前准备
yum -y install gcc
yum -y install openssl
yum -y install openssl-devel
yum -y install curl
yum -y install curl-devel
yum -y install bzip2
yum -y install bzip2-devel

下载apache安装包并解压

Download - The Apache HTTP Server Project

创建apache的待安装目录   /usr/local/

mkdir /usr/local/apache

下载依赖包apr-1.7.0.tar.gz  apr-util-1.6.1.tar.gz

Download - The Apache Portable Runtime Project

安装apr-1.7.0

cd apr-1.7.0
./configure --prefix=/usr/local/apr
make
make install

安装apr-util-1.6.1

cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util-1.6.1 --with-apr=/usr/local/apr
make
make install

这里直接make编译的时候会报错,如果报错,就是少了一个expat库,需要编译前安装,错误信息如下:

xml/apr_xml.c:35:19: error: expat.h: No such file or directory
xml/apr_xml.c:66: error: expected specifier-qualifier-list before ‘XML_Parser’
xml/apr_xml.c: In function ‘cleanup_parser’:
xml/apr_xml.c:364: error: ‘apr_xml_parser’ has no member named ‘xp’
xml/apr_xml.c:365: error: ‘apr_xml_parser’ has no member named ‘xp’

yum安装expat-devel

yum install expat-devel

下载pcre-8.42.tar.gz  并解压,创建待安装目录

PCRE - Browse Files at SourceForge.net    (注意别下载pcre2开头的)

安装pcre-8.42

cd pcre-8.42
./configure --prefix=/usr/local/pcre
make
make install

安装apache

cd httpd-2.4.51
 ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-rewirte --enable-ssl --enable-cgi --enable-cgid--enable-modules=most --enable-modules-shared=most --enable-mpms-shared=all --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
make
make install

出现如下报错解决方法

make[2]: [htpasswd] 错误 1
make[2]: 离开目录“/usr/local/src/httpd-2.4.51/support”
make[1]: [all-recursive] 错误 1
make[1]: 离开目录“/usr/local/src/httpd-2.4.51/support”
make: *** [all-recursive] 错误 1

解决方法:

(1)在configure后加上 “--with-included-apr”。再重新编译, make, make install

(2)如果在添加上述语句后又再次报错,内容如下:

configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.

解决方法:

将解压后的apr-1.7.0、apr-util-1.6.1、pcre-8.42这三个文件拷贝到/usr/local/httpd-2.4.51/srclib/下 :具体操作如下:

cp apr-1.7.0 /usr/local/httpd-2.4.51/srclib/apr
cp apr-util-1.6.1 /usr/local/httpd-2.4.51/srclib/apr-util
cp pcre-8.42 /usr/local/httpd-2.4.51/srclib/pcre

状态命令

启动:/usr/local/apache/bin/apachectl start
停止:/usr/local/apache/bin/apachectl stop
重启:/usr/local/apache/bin/apachectl restart
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值