银河麒麟等ARM Linux系统需先安装gcc、g++、make及apr-devel等开发包,再依次编译安装apr、apr-util、pcre和httpd源码,最后配置systemd服务并启动验证。
确认系统基础环境与依赖工具
arm架构(如鲲鹏、树莓派)运行linux发行版时,需先确保编译链和开发库就位。银河麒麟、openeuler、ubuntu server arm64等系统默认不预装编译工具,必须手动安装:
-
编译器与构建工具:gcc、g++、make(鲲鹏平台常用
yum install -y gcc gcc-c++ make;Ubuntu系用apt install -y build-essential) - 核心依赖库开发包:apr-devel、apr-util-devel、pcre-devel、expat-devel、openssl-devel(注意不是运行时包,而是带头文件和静态库的-devel版本)
-
验证命令:
rpm -q apr-devel pcre-devel(RPM系)或dpkg -l | grep pcre-dev(Debian系),缺失则补全
下载适配ARM的源码包
Apache官方不区分x86/ARM二进制,但源码需在目标平台本地编译。务必从可信镜像站下载,避免交叉编译失败:
- 推荐使用清华源:
wget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.59.tar.gz - 同时下载配套依赖源码(若系统无对应devel包):
apr-1.7.4.tar.gz、apr-util-1.6.3.tar.gz、pcre-8.45.tar.gz(版本需与httpd兼容,2.4.59建议搭配apr 1.7+) - 解压后统一规划路径,例如:
mkdir -p /opt/src/{apr,apr-util,pcre,httpd},再分别解压到对应目录
按顺序编译安装依赖与主程序
Apache 2.4+强制依赖APR和PCRE,且模块动态加载需--enable-so,顺序错误会导致configure失败:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
-
先装apr:
cd /opt/src/apr && ./configure --prefix=/usr/local/apr && make && make install -
再装apr-util:
cd /opt/src/apr-util && ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make && make install -
接着装pcre:
cd /opt/src/pcre && ./configure --prefix=/usr/local/pcre && make && make install -
最后编译httpd:
cd /opt/src/httpd && ./configure --prefix=/usr/local/apache2 --enable-so --enable-ssl --enable-rewrite --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre - 执行
make -j$(nproc)加速编译(鲲鹏多核优势明显),再make install
配置服务并启动验证
ARM平台无特殊启动机制,但需注意路径和权限一致性:
- 修改
/usr/local/apache2/conf/httpd.conf,确认Listen 80未被注释,ServerName设为本机IP或localhost - 创建systemd服务文件
/etc/systemd/system/httpd.service,内容含ExecStart=/usr/local/apache2/bin/apachectl start及Type=forking - 启用服务:
systemctl daemon-reload && systemctl enable httpd && systemctl start httpd - 验证:
ss -tlnp | grep :80看端口监听,curl -I http://localhost返回200 OK即成功










