一:安装相关依赖
1:BCLinux-for-Euler-21.10在线主机安装依赖
yum install apr-devel apr-util-devel -y
yum -y install cyrus-sasl -y
2:若主机无法访问互联网,则到http://mirrors.cmecloud.cn/bclinux/oe21.10/everything/aarch64/Packages/下载相关依赖
相关依赖包列表(gcc-c++相关可不下载)
yum install apr-devel apr-util-devel -y对应包如下:
apr-devel-1.7.0-4.oe1.aarch64.rpm
apr-util-devel-1.6.1-14.oe1.aarch64.rpm
yum -y install cyrus-sasl -y对应包如下:
安装相关依赖
#rpm -ivh *.rpm
二:解压httpd安装包
解压apache包 如httpd-2.2.0.tar.gz并进入httpd文件夹
# tar zxvf httpd-2.2.0.tar.gz
# cd httpd-2.2.0
三:预编译
#./configure --prefix=/usr/local/apache --enable-rewrite --enable-so --with-mpm=worker
问题一:arm架构主机下预编译出现提示:
configure: error: cannot guess build type; you must specify one
则从主机/usr目录下找到config.guess 和 config.sub两个文件,去替换httpd-2.2.0里面build文件夹下的config.guess 和 config.sub两个文件
#mv ./build/config.guess ./build/config.guess.bak
#mv ./build/config.sub ./build/config.sub.bak
#cp /usr/lib/rpm/config.guess ./build
#cp /usr/lib/rpm/config.sub ./build
问题二:
如果报:
undefined reference to `SSLv2_client_method'
则 预编译命令后面加--disable-ssl 使ssl无效
#./configure --prefix=/usr/local/apache --enable-rewrite --enable-so --with-mpm=worker --disable-ssl
四:编译和编译安装
#make
#make install
#查询ServerName是否取消注释及修改其ServerName的值(不同版本会有不同的值)
#cat /usr/local/apache/conf/httpd.conf |grep ServerName
把查出的服务名www.example.com:80改为本机IP,如192.168.72.62(注意还要取消注释)
#sed -i 's/#ServerName www.example.com:80/ServerName 192.168.72.62:80/g' /usr/local/apache/conf/httpd.conf
五:重启服务
#/usr/local/apache/bin/apachectl -k restart
六:浏览器访问:
http://192.168.72.62
七:卸载apache:
预编译命令里的--prefix=/usr/local/apache 即为安装目录参数的意思,停止apache服务后删除此目录所有文件便可
# /usr/local/apache/bin/apachectl -k stop
# rm -rf /usr/local/apache