CentOS上迁移Apache 2版本可采用以下两种方式:
sudo cp -r /etc/httpd /etc/httpd.bak # 备份配置文件
sudo cp -r /var/www/html /var/www/html.bak # 备份网站数据
sudo yum update -y # CentOS 7/8均适用
sudo yum install epel-release -y # 启用EPEL仓库(CentOS 7需手动安装)
sudo yum install httpd # 安装最新版(CentOS 7/8通用)
# 若需指定版本,可使用:sudo yum install httpd-<版本号>
sudo systemctl restart httpd
sudo systemctl enable httpd
apachectl -v # 查看版本确认升级成功
wget https://downloads.apache.org/httpd/httpd-<版本号>.tar.gz # 替换为目标版本号
tar -zxvf httpd-<版本号>.tar.gz
cd httpd-<版本号>
sudo yum install -y gcc apr-devel apr-util-devel pcre-devel # 安装编译依赖
./configure --prefix=/usr/local/apache2 --enable-so --enable-ssl # 配置编译选项
make && sudo make install
sudo mv /usr/sbin/httpd /usr/sbin/httpd.old # 备份旧二进制文件
sudo ln -s /usr/local/apache2/bin/httpd /usr/sbin/httpd # 创建新版本符号链接
sudo /usr/local/apache2/bin/apachectl start # 启动新版本
sudo firewall-cmd --add-service=http --permanent # 开放防火墙端口(CentOS 7/8通用)
sudo firewall-cmd --reload
sudo /usr/local/apache2/bin/apachectl configtest # 检查配置语法
apachectl -v # 确认版本
gcc
、apr-devel
等开发工具。netstat -tulnp
检查80/443端口是否被占用,避免服务启动失败。推荐优先使用YUM方式,操作简便且自动处理依赖;手动编译适用于需要特定功能或旧版本的场景,但需注意配置兼容性。