温馨提示×

CentOS如何替换Apache版本

小樊
62
2026-07-09 07:38:44
栏目: 智能运维

CentOS 上替换(升级或降级)Apache(httpd)版本,常见有 三种方式,取决于你当前环境和目标版本。下面按 推荐程度 给你说明。


一、方式一(最推荐):使用官方 SCL / AppStream(CentOS 7/8/Stream)

✅ CentOS 7:使用 SCL(Software Collections)

适合 不破坏系统自带 httpd 的情况下使用新版本。

1. 安装 SCL 源

yum install -y centos-release-scl

2. 查看可用 Apache 版本

yum search httpd

常见版本:

  • httpd24
  • httpd24-httpd

3. 安装新版本 Apache

yum install -y httpd24-httpd httpd24-httpd-tools

4. 启动新版本 Apache

scl enable httpd24 bash
systemctl start httpd24-httpd
systemctl enable httpd24-httpd

⚠️ 注意:SCL 版本不会覆盖系统自带 /usr/sbin/httpd


✅ CentOS 8 / Stream:使用 AppStream

dnf module list httpd

示例输出:

httpd:2.4

切换版本(如果有多个)

dnf module reset httpd
dnf module enable httpd:2.4
dnf install httpd

二、方式二:卸载旧版本,安装新版本(官方仓库)

⚠️ 风险:可能影响依赖服务(PHP、Python 等)

1. 查看当前版本

httpd -v

2. 卸载旧版本

systemctl stop httpd
yum remove httpd -y

3. 安装新版本

yum install httpd -y

4. 启动并验证

systemctl start httpd
httpd -v

三、方式三:编译安装指定版本(最灵活)

适合 需要特定 Apache 版本(如 2.4.57)

1. 安装依赖

yum install -y gcc make pcre-devel openssl-devel expat-devel

2. 下载 Apache 源码

cd /usr/local/src
wget https://archive.apache.org/dist/httpd/httpd-2.4.57.tar.gz
tar -zxvf httpd-2.4.57.tar.gz
cd httpd-2.4.57

3. 编译安装

./configure --prefix=/usr/local/apache \
--enable-so \
--enable-ssl \
--with-mpm=prefork

make
make install

4. 替换系统 Apache(可选)

mv /usr/sbin/httpd /usr/sbin/httpd.bak
ln -s /usr/local/apache/bin/httpd /usr/sbin/httpd

四、常见注意事项(非常重要)

✅ 1. 配置文件路径

方式 配置路径
yum /etc/httpd/conf/httpd.conf
编译 /usr/local/apache/conf/httpd.conf

✅ 2. PHP 兼容性

  • Apache 升级后 PHP 可能失效
  • 需重新安装 phplibphp.so

✅ 3. 查看当前 Apache 版本

httpd -v

五、推荐方案总结

场景 推荐方式
生产环境 ✅ SCL / AppStream
升级小版本 yum 重装
指定版本 编译安装

如果你愿意,可以告诉我:

  • ✅ CentOS 版本(7 / 8 / Stream)
  • ✅ 当前 Apache 版本
  • ✅ 想升级到哪个版本

我可以给你 精确的一步到位命令

0