linux http服务源码编译安装详解
相信大家大多都听过linux 的编译安装,但它到底是怎么把源代码变为自己电脑里可以应用的软件哪?今天,小编就以httpd 为例详细讲解一下。
什么是编译安装——编译:将源代码变为机器可执行的代码文件。安装:将可执行文件安装到操作系统里,才可以使用。
一、下载httpd最新版本的源码包
(1)如果电脑里有老版本的情况下,rpm -qi httpd 查看详细信息,里边有这个命令下载的官网,没有老版本就去官网查找。

(2)去官网下载最新版本(自己想要的版本)(一般在downloads下)

(3)rz上传到linux ,并解压包 tar -xf httpd-2.4.27.tar.bz2

二、查看INSTALL、README 这些帮助信息
进入cd httpd-2.4.27/
查询 cat INSTALL,里边有简单的安装过程,和一些例子

查询 cat README,(what is it ?)里边有一些Apache 的功能介绍
三、configure脚本(检测当前编译环境)
(1)./configure --help 查询这个脚本的用法,
--prefix=PREFIX 指定默认安装总目录, 默认为/usr/local/
--sysconfdir=/PATH 配置文件安装位置,默认就安装到指定安装总目录的下面

Optional Features: 需要什么功能
--disable-FEATURE 关闭某些功能
--enable-FEATURE 开启某些功能

(2)下面我们就来执行这个脚本,添加一些简单的设置
./configure --prefix=/app/apache24 --sysconfdir=/etc/apache24 --enable-rewrite
① 首次安装,会提示出一些错误,因为有些包没有安装

② 我们只需按照提示的错误,把需要的都安装上去(直到没有提示错误)
先查询缺少的 yum search apr-devel(一般关于开发的都叫 devel)
再安装 yum -y install apr-devel

中间会提示一个,没有C编译工具,缺少gcc的错误,这时候,我们需要下一个包组Development Tools
yum -y groupinstall "Development Tools"
③ configure脚本完全执行成功(多了一个Makefile)没有Makefile ,不能下面make过程

四、make 和 make install 编译
make 编译后,多了很多.o .lo 文件 (二进制文件),在此之前的工作,任何用户都能做,并且都在httpd-2.4.27 这个目录下进行

make install 安装到指定位置,只有root 能做,
安装完毕

五、启动服务
(1)netstat -ntl 查看本地监听端口,有没有开启80端口
如果没有开启, service httpd start 开启80端口

(2)设置防火墙,因为防火墙组织了80端口
iptables -vL 查看防火墙策略,防火墙阻止,可以关闭防火墙
systemctl status firewalld.service 查看当前防火墙状态(只有centos 7 中有)
或 systemctl is-active firewalld.service 查看当前防火墙状态
systemctl stop firewalld.service 暂时关闭防火墙(下次开机会在开启)

systemctl is-enabled firewalld.service 查看开机时是否开启防火墙
systemctl disable firewalld.service 设置开机时不开启防火墙

如果是centos 6 以下的较低版本
service iptables stop 关闭防火墙
chkconfig httpd off 设置开机时不开启防火墙
(3)如果是安装新版本,需现将旧版本卸载 rpm -e httpd (rpm -qf `which httpd`查询当前版本)
(4)/app/apache24/bin/apachectl start 开启服务

就此服务开启成功!!!
/app/apache24/bin/apachectl stop 可以关闭服务
六、安装后的配置
(1)设置PATH export PATH=$PATH:/app/apache24/bin/
设置后,可以 apachectl start 开启服务
apachectl stop 关闭服务
(2)导入帮助手册man
vim /etc/man_db.conf
加入一行 MANDATORY_MANPATH /app/apache24/man

就可以man apachectl
到此就完成所有工作了!!!
希望对大家有帮助,有什么错误请告诉我~
linux http服务源码编译安装详解的更多相关文章
- apache源码编译安装详解
查看是否安装 rpm -qa httpd 如果已安装,则卸载:rpm -e 卸载 --nodeps 不考虑意外 下载 wget http://mirrors.sohu.c ...
- Linux环境PostgreSQL源码编译安装
Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...
- 在Linux下用源码编译安装apache2
Linux下安装一个软件,最好去看下它的官方guide,apache2.4的安装安装guide 0. installation guide http://httpd.apache.org/docs/2 ...
- linux下如何源码编译安装vim
1. 获取源码 git clone https://github.com/vim/vim.git ~/vim cd ~/vim 2. 配置 ./configure --prefix=/home/jel ...
- QGIS源码编译步骤详解——官方新方案
目录 源码下载 环境下载 Cygwin64 OSGeo4W CMAKE Visual Studio 2017 环境配置 配置 编译 方案详细可见源码文件中INSTALL.md. 源码下载 QG ...
- 源码编译安装MySQL8.0.20
1 概述 本文章主要讲述了如何从源码编译安装MySQL社区版8.0.20,首先会介绍一些编译安装的相关知识,然后开始编译安装 2 源码编译安装的相关知识 2.1 make与configure make ...
- Linux 从源码编译安装 OpenSSH
https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...
- Linux源码编译安装httpd
Linux安装软件采用源码编译安装灵活自由,适用于不同平台,维护也十分方便. 源码编译的安装方式一般由3个步骤组成: 1.配置(configure) 2.编译(make) 3.安装(make inst ...
- Httpd服务进阶知识-LAMP源码编译安装
Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理 ...
随机推荐
- ceph删除pool提示(you must first set the mon_allow_pool_delete config option to true)解决办法
现象: 1.在mon节点打开/etc/ceph/ceph.conf,增加以下 2.重启ceph-mon systemctl restart ceph-mon.target 3.删除pool [root ...
- uboot中获取dts资源并操作gpio口
设备树(DTS)的引入减少了内核为支持新硬件而需要的改变,提高代码重用,使得单个内核镜像能支持多个系统. DTS作为U-Boot 和Linux 内核之间的动态接口,能够有效减少重复配置,共享于U ...
- 导出mysql的表格内容到txt文件
操作流程: $ mysql -uroot -p mysql> use foo; mysql> select * from userinfo into outfile '/var/lib/m ...
- openXML向Word插入表
表是 Word 中的另一类型的块级内容,它是以行和列排列的一组段落(以及其他块级内容). Word 中的表格通过 tbl 元素定义,该元素类似于 HTML <表格>标记. 表元素指定文档中 ...
- qrcode.php
<!doctype html><html><head> <meta charset="UTF-8"/> <meta name= ...
- spring整合mybatis二种配置
第一种: <!-- 配置sqlsession --> <bean id="sqlsessionFactory" class="org.mybatis.s ...
- [转]linux VLAN配置(vconfig)
1.安装vlan(vconfig)和加载8021q模块 #aptitude install vlan #modprobe 8021q 2.使用linux vconfig命令配置vlan #vconfi ...
- VSCode插件开发全攻略(九)常用API总结
更多文章请戳VSCode插件开发全攻略系列目录导航. 本文提炼一些常见的API使用场景供参考,本文内容有待完善. 编辑器相关 修改当前激活编辑器内容 替换当前编辑器全部内容: vscode.windo ...
- ISG 2018 Web Writeup
作者:agetflag 原文来自:ISG 2018 Web Writeup ISG 2018 Web Writeup CTF萌新,所以写的比较基础,请大佬们勿喷,比赛本身的Web题也不难 calc 首 ...
- ECDSA数字签名算法
一.ECDSA概述 椭圆曲线数字签名算法(ECDSA)是使用椭圆曲线密码(ECC)对数字签名算法(DSA)的模拟.ECDSA于1999年成为ANSI标准,并于2000年成为IEEE和NIST标准.它在 ...