编译安装Apache httpd服务

目录

[1.初始化设置,将Apache所需软件包传到 /opt 目录下](#1.初始化设置,将Apache所需软件包传到 /opt 目录下)

(1)关闭防火墙

(2)上传软件包到/opt目录

2.安装环境依赖包

3.配置软件模块

4.编译及安装

5.优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别

6.添加httpd系统服务

7.修改httpd服务配置文件

8.浏览器访问验证

打开虚拟机浏览器


1.初始化设置,将Apache所需软件包传到 /opt 目录下

(1)关闭防火墙

bash 复制代码
systemctl stop firewalld.service           #关闭防火墙

setenforce 0                               #关闭selinux防火墙

(2)上传软件包到/opt目录

2.安装环境依赖包

bash 复制代码
mount /dev/sr0 /mnt                                                 #挂载镜像
yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl    #安装服务
  • gcc #C语言的编译器
  • gcc-c++ #C++的编译器
  • make #源代码编译器(源代码转换成二进制文件)
  • pcre #pcre是一个Perl函数库,包括perl 兼容的正则表达式库
  • pcre-devel #perl的接口开发包
  • expat-devel #用于支持网站解析HTML、XML文件
  • perl #perl语言编译器

3.配置软件模块

复制代码
cd /opt/                          #切换/opt/目录
 
tar xf apr-1.6.2.tar.gz           #解压apr-1.6.2.tar.gz    

tar xf apr-util-1.6.0.tar.gz      #解压apr-util-1.6.0.tar.gz 

tar xf httpd-2.4.29.tar.bz2       #解压httpd-2.4.29.tar.bz2 

mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr               #移动文件

mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util     #移动文件

cd /opt/httpd-2.4.29/                             #切换目录

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
  • --prefix=/usr/local/httpd #指定将 httpd 服务程序的安装路径
  • --enable-so #启用动态加载模块支持,使 httpd 具备进一步扩展功能的能力
  • --enable-rewrite #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
  • --enable-charset-lite #启动字符集支持,以便支持使用各种字符集编码的页面
  • --enable-cgi #启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力

4.编译及安装

复制代码
make                          #make -j 3  表示开3核同时进行编译
make install

5.优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别

复制代码
ln -s /usr/local/httpd/conf/httpd.conf /etc/       
ln -s /usr/local/httpd/bin/* /usr/local/bin/

6.添加httpd系统服务

bash 复制代码
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd            #复制文件
chmod +x /etc/init.d/httpd                                     #添加执行权限
vim /etc/init.d/httpd                                          #编辑文件
复制代码
chkconfig --add httpd              #将httpd服务加入到service管理器

systemctl start httpd.service                                  #启动服务

7.修改httpd服务配置文件

复制代码
vim /etc/httpd.conf                           #修改文件
复制代码
httpd -t                                         #检查配置文件的配置项是否有误
apachectl -t

8.浏览器访问验证

复制代码
netstat -lntp | grep 80                  #检查80号端口是否打开

echo "20.0.0.3 www.xy.com" >> /etc/hosts 输入20.0.0.3 www.xy.com追加

打开虚拟机浏览器

http://20.0.0.3 http://www.xy.com 进行验证

相关推荐
国家不保护废物2 小时前
🌟 React 魔法学院入学指南:从零构建你的第一个魔法阵(项目)!
前端·react.js·架构
DemonAvenger3 小时前
Go sync.Pool 最佳实践:复用对象降低 GC 压力的技术文章
性能优化·架构·go
颜颜yan_3 小时前
深入解析HarmonyOS5 UIAbility组件:从核心架构到实战应用
架构·harmonyos·鸿蒙·鸿蒙系统
搬码红绿灯3 小时前
MySQL主从复制深度解析:原理、架构与实战部署指南
数据库·mysql·架构
呼拉拉呼拉3 小时前
Redis高可用架构
数据库·redis·架构·高可用架构
zjun30213 小时前
【知识扫盲】分布式系统架构或分布式服务中的管理面,数据面和业务面
架构·分布式架构·数据面·管理面·业务面
EndingCoder11 小时前
React从基础入门到高级实战:React 实战项目 - 项目三:实时聊天应用
前端·react.js·架构·前端框架
后海 0_o16 小时前
2025前端微服务 - 无界 的实战应用
前端·微服务·架构
喵叔哟16 小时前
24.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--认证微服务
微服务·架构·.net
java干货16 小时前
虚拟线程与消息队列:Spring Boot 3.5 中异步架构的演进与选择
spring boot·后端·架构