CentOS 7 安装 httpd-2.4.1.tar.gz 详细步骤(源码编译、配置、启动)

一、准备编译环境

Apache 2.4.1 是从源码编译安装的,先把编译器和基础工具装好:

复制代码
sudo yum groupinstall -y "Development Tools"
sudo yum install -y gcc make autoconf apr-devel apr-util-devel pcre-devel openssl-devel

二、下载并解压

安装包下载:https://pan.quark.cn/s/14aa7efc2a7b

复制代码
tar -zxvf httpd-2.4.1.tar.gz
cd httpd-2.4.1

三、配置编译参数

进入目录后先配置,指定安装位置和常用模块:

复制代码
./configure \
--prefix=/usr/local/apache2 \
--enable-so \
--enable-rewrite \
--enable-ssl \
--with-mpm=prefork
  • --prefix:安装目录

  • --enable-so:支持动态加载模块

  • --enable-rewrite:开启重写规则

  • --enable-ssl:支持 HTTPS

  • --with-mpm=prefork:使用 prefork 模式(老版本常用)

如果缺依赖,会明确提示缺什么包,按提示装即可。

四、编译并安装

配置没问题就开始编译:

复制代码
make
sudo make install

没有报错就说明安装完成。

五、启动 Apache

进入安装目录的 bin 目录启动:

复制代码
cd /usr/local/apache2/bin
sudo ./apachectl start

六、验证是否成功

打开浏览器访问:

复制代码
http://服务器IP

看到 "It works!" 就是成功了。

也可以在服务器上用 curl 测试:

复制代码
curl http://localhost

七、常用命令

  • 启动:

    sudo /usr/local/apache2/bin/apachectl start

  • 停止:

    sudo /usr/local/apache2/bin/apachectl stop

  • 重启:

    sudo /usr/local/apache2/bin/apachectl restart

  • 检查配置:

    sudo /usr/local/apache2/bin/apachectl configtest

八、常见问题

  1. 80 端口被占用​

    修改 conf/httpd.conf里的:

    复制代码
    Listen 8080

    然后重启。

  2. **启动时报 "Address already in use"**​

    用:

    复制代码
    netstat -tlnp | grep 80

    找到占用进程并停掉。

  3. 远程访问不了​

    放行防火墙端口:

    复制代码
    sudo firewall-cmd --add-port=80/tcp --permanent
    sudo firewall-cmd --reload

这样就完成了 Apache httpd-2.4.1 的源码安装,适合老项目或需要特定版本的环境。

相关推荐
NPE~1 分钟前
CMDB科普:配置管理数据库——运维相关
运维·数据库·科普·cmdb·配置管理数据库
陌上花开缓缓归以1 小时前
arm linux ddr 内存布局
linux·arm开发
龙腾-虎跃1 小时前
Linux 趣味实战|纯 Bash Shell 脚本实现俄罗斯方块终端小游戏(完整源码资源)
linux·运维·bash
阳光九叶草LXGZXJ9 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
奔跑的大白啊9 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
黄大刀10 小时前
DataPulse一款开箱即用的SCADA(四)-历史记录
运维·scada·动环
归秋14212 小时前
2026 企业 AI 办公工具选型指南:从评估框架到产品适配
大数据·运维·人工智能
Android系统攻城狮12 小时前
Linux Gstreamer深度解析之gst_audio_encoder_set_frame_max调用流程与实战(六十一)
android·linux·运维·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
H.莓飛13 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
91刘仁德13 小时前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip