源码编译方式安装htppd软件

一.源码编译安装httpd软件

1.安装阿帕奇的依赖,安装apr软件,阿帕奇正常运行的环境这个环境就是apr。

2.安装apr-util软件,主要提供针对apr环境的管理工具,

3.安装阿帕奇软件即httpd软件。

如上图所示,就是三个软件的源码安装包

1.安装apr软件

如上图所示,是对apr软件的一系列操作。

如上图所示,这个apr的目录中有这个configure程序,现在我们需要再当前目录下运行这个configure程序,然后去配置相应的参数,比如使用--prefix去指定一下软件的安装路径。

如上图所示,发现安装apr软件的时候,缺少相应的gcc依赖

如上图所示,安装缺少的gcc依赖。

随后去重新安装apr软件,

如上图所示,随后去执行make命令去编译这个软件。

随后使用make install去真正安装这个软件。

2.安装apr-util软件

如上图所示,解压缩这个软件apr-util软件,随后进入这个软件的目录,

然后去运行./configure程序,随后使用--prefix=指定软件的安装路径,--with-apr=指定apr软件的安装路径。

如上图所示,随后使用make去编译这个软件

最后使用make install 去正式安装这个软件。

3.安装httpd软件

--enable-so用来启动阿帕奇动态加载模块的功能,

--enable-rewrite表示的是这个阿帕奇软件的url地址跳转功能。

--enable-ssl让阿帕奇支持https协议。

--enable-cgi 

--enable-cgid

也就是说能让阿帕奇能够调用其他的应用程序去解析动态网页的代码。

--enable-modules=most

--enable-mods-shared=most

也就是说为阿帕奇安装所有的功能模块。

--enable-mpm-shared=all

让阿帕奇支持所有的MPM模型

--with-mpm=event

用来指定阿帕奇的MPM模型

--with-apr=apr软件的安装路径

--with-apr-util=apr-util软件的安装路径

如上图所示,是在执行configure程序的时候系统报出的错误。

显示需要pcre的依赖,所以需要去安装这个软件

这个pcre是用来进行正则表达式支持的,主要用于url地址重写。

如上图所示,我们去安装这个pcre-devel去解决pcre的问题。

如上图所示,当解决完pcre的错误的时候,就需要去重新支持configure的程序。

如上图所示,要解决这个报错就需要去安装openssl-devel软件,去使得httpd软件支持https协议。

随后使用make对这个软件进行编译,

最后使用make install 正式安装这个软件

二.httpd启动管理

systemctl 这个命令只能用来管理系统服务,如果这个软件是用rpm软件安装包的方式安装的,

那么就可以使用systemctl命令来进行管理。

但是源码编译的httpd软件,

想要启动的话,

如上图所示,可以用httpd这个命令加上相关的选项来启动httpd服务。

如上图所示,可以用这个httpd加上-h选项来查看这个命令相关的帮助信息。

如上图所示,此时是提示我们在httpd.conf这个主配置文件中,有一行ServerName的配置,我们没有进行配置,这并不是报错。

如上图所示,阿帕奇启动默认监听80端口,

并且这个阿帕奇服务默认启动三个子进程,

如上图所示,此时证明这个httpd服务启动成功,

怎么设置服务开机自启动?

如上图所示,这个是机器自带的脚本文件,机器每一次开机都会自动执行脚本中的命令

如上图所示,就是给这个脚本文件进行的一系列编辑操作,这就能保证源码编译安装的httpd脚本软件可以开机自启动。

三.httpd相关文件介绍

如上图所示,在httpd软件的安装目录下的bin目录中,存放着关于httpd软件的命令。

如上图所示,httpd.conf就是这个源码软件httpd的主配置文件。

如上图所示,这些文件都是源码软件httpd的子配置文件。

如上图所示,这个文件保存的是httpd软件的日志信息,

如上图所示,是源码编译的httpd软件默认的网页目录,默认存放着一个用于测试的首页。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/882206.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

E38.【C语言】练习:数据结构时间复杂度的计算

目录 1.二分法的时间复杂度 解: 2.求阶乘的时间复杂度 解: 3.递归实现斐波那契数,求时间复杂度 解: 4.时间复杂度的排名 备注:有关时间复杂度的讲解参见80.【C语言】数据结构之时间复杂度 1.二分法的时间复杂度 (代码来自E7.【C语言】练习:在一个有序数组中…

CentOS 7 yum失效的解决办法

文章目录 一、CentOS 7停止维护导致yum失效的解决办法解决方案 提示:以下是本篇文章正文内容,下面案例可供参考 一、CentOS 7停止维护导致yum失效的解决办法 020 年,CentOS 项目与红帽联合宣布将全部投资转向 CentOS Stream,这是…

SpringBoot项目热部署-devtools

DevTools 会使用两个类加载器&#xff08;一个用于加载不变的类&#xff0c;一个用于加载可能会变化的类&#xff09;&#xff0c;每次重启只重新加载管理变化的类的加载器&#xff0c;因此会快很多 1.导入依赖 <dependency> <groupId>org.springframework.boot&l…

HCIE-Datacom题库_01_防火墙【18道题】

一、单选题 1.相比较于路由器、交接机&#xff0c;防火墙转发独有的模块为? 交换网板 MPU LPU SPU 解析&#xff1a; SFU&#xff08;Switch Fabric Unit&#xff09;&#xff1a;交换网板&#xff0c;负责整个系统的数据平面数据平面提供高速无阻塞数据通道&#xff0…

关于SOCKS协议的常见误区有哪些?

代理协议在设备与代理服务器之间的数据交换中起到了关键作用。在这方面&#xff0c;SOCKS代理协议是常见的选择之一&#xff0c;被广泛应用于下载、传输和上传网络数据的场景。然而&#xff0c;关于SOCKS代理协议存在一些常见的误解&#xff0c;让我们来逐一了解。 一、使用SO…

爬虫逆向-js进阶(续写,搭建网站)

1.搭建简单网站1 from flask import Flask,render_template import requests import json app Flask(name)# **location**的温度是**temp**度&#xff0c;天气状况&#xff1a;**desc**app.route(/) # 绑定处理函数 def index_url():location 101010100data get_weather(lo…

【学习】word保存图片

word中有想保存的照片 直接右键另存为的话&#xff0c;文件总是不清晰&#xff0c;截屏的话&#xff0c;好像也欠妥。 怎么办? 可以另存为 网页 .html 可以得到&#xff1a; 原图就放到了文件夹里面

C++简易日志系统:打造高效、线程安全的日志记录工具

目录 引言&#xff1a; 1.日志的基本概念 1.1.什么是日志&#xff1f; 1.2.我们为什么需要日志&#xff1f; 2.自己实现一个简易日志 2.1.日志的等级 2.2日志的格式 2.3.获取时间的方法 2.4.日志的主体实现 参数&#xff1a; 代码解析&#xff1a; 问题&#xff1a…

5、JavaScript(五)

28.jquery&#xff1a;js库 简化版本的js&#xff0c;封装了现成功能的js代码。 jquery就是一些封装好了的现成的方法&#xff0c;供我们直接使用。 jquery能实现的js都能实现。 在使用 记得先引入jquery&#xff1a;在菜鸟教程上直接用jquery的绝对路径引入&#xff0c;jq…

Gin框架操作指南03:HTML渲染

官方文档地址&#xff08;中文&#xff09;&#xff1a;https://gin-gonic.com/zh-cn/docs/ 注&#xff1a;本教程采用工作区机制&#xff0c;所以一个项目下载了Gin框架&#xff0c;其余项目就无需重复下载&#xff0c;想了解的读者可阅读第一节&#xff1a;Gin操作指南&#…

java游戏网站源码

题目&#xff1a;java游戏网站源码 编号B22A390 主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Mysql|大数据|SSM|SpringBoot|Vue|Jsp|MYSQL等)、学习资料、JAVA源码、技术咨询 文末联系获取 感兴趣可以先收藏起来&#xff0c;以防走丢&#xff0c;有任何选题、文档编…

什么是 BloomFilter

什么是 BloomFilter 布隆过滤器&#xff08;英语&#xff1a;Bloom Filter&#xff09;是 1970 年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。主要用于判断一个元素是否在一个集合中。 通常我们会遇到很多要判断一个元素是否在某个集合中的业务场景&a…

Cocos Creator导出obj文件用于后端寻路

Cocos Creator 3.8.0 用这个扩展插件 【杨宗宝】两年前写的网格工具&#xff0c;今天将它开源了。 - Creator 3.x - Cocos中文社区carlosyzy_extensions_mesh: Cocos Creator 3.x mesh插件&#xff0c;负责网格数据的导出。合并&#xff0c;拆封等一系列操作 (gitee.com) 下…

分类任务中评估模型性能的核心指标

在机器学习尤其是分类任务中&#xff0c;Accuracy&#xff08;准确率&#xff09;、Precision&#xff08;精确率&#xff09;、Recall&#xff08;召回率&#xff09;和F1 Score&#xff08;F1分数&#xff09;是评估模型性能的四个核心指标。每个指标都有其独特的含义和用途&…

排序基础方法

逆序&#xff08;inversion&#xff09; 一个序列中存在元素对&#xff0c;顺序与理想顺序相反 注意事项 算法的空间复杂度&#xff0c;即便graph本身要花费VE&#xff0c;但是DFS是V&#xff0c;只考虑自身要用的。 Selection Sort&#xff08;选择排序) 方法 不断选择最…

牛客编程初学者入门训练——BC53 判断是元音还是辅音

BC53 判断是元音还是辅音 描述 KiKi开始学习英文字母&#xff0c;BoBo老师告诉他&#xff0c;有五个字母A(a), E(e), I(i), O(o),U(u)称为元音&#xff0c;其他所有字母称为辅音&#xff0c;请帮他编写程序判断输入的字母是元音&#xff08;Vowel&#xff09;还是辅音&#x…

如何在算家云搭建Video-Infinity(视频生成)

一、模型介绍 Video-Infinity是一个先进的视频生成模型&#xff0c;使用多个 GPU 快速生成长视频&#xff0c;无需额外训练。它能够基于用户提供的文本或图片提示&#xff0c;创造出高质量、多样化的视频内容。 二、模型搭建流程 1.大模型 Video-Infinity 一键使用 基础环境…

Axure使用echarts详细教程

本次使用的axure版本为rp9,下面是效果图。 接下来是详细步骤 【步骤1】在axure上拖一个矩形进来&#xff0c;命名为myChart(这个根据实际情况来,和后面的代码对应就好) 【步骤2】 点击交互->选择加载时->选择打开链接->链接外部地址 点击fx这个符号 【步骤3】在弹…

【GIT】.cr、.gitattributes 、 .gitignore和.git各文件夹讲解介绍

在 Git 项目中&#xff0c;.cr、.gitattributes 和 .gitignore 文件分别用于不同的配置和管理功能。下面分别解释这些文件的作用和用途&#xff1a; 1. .gitignore 文件 作用&#xff1a; .gitignore 文件用于指定哪些文件或目录应该被 Git 忽略&#xff0c;不会被追踪或提交…

LabVIEW提高开发效率技巧----减少UI更新频率

在LabVIEW开发中&#xff0c;图形化用户界面&#xff08;UI&#xff09;的更新频率对程序的响应速度有着显著影响。频繁的UI更新会占用大量资源&#xff0c;导致系统性能下降。本文将详细介绍如何通过减少UI更新频率来提升LabVIEW程序的运行效率&#xff0c;从多个角度进行分析…