二进制编译Httpd服务器

前言:

  Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

环境介绍

  系统环境:CentOS7

  所需软件包:apr-1.5.1.tar.gz、apr-util-1.5.4.tar.gz、httpd-2.4.12.tar.gz

  注意:httpd2.4需要依赖apr和arp-util 1.4以上版本

CentOS编译安装Apache准备:确保开发包组已安装(Development tools、Server Platform Development)

# yum groupinstall Development tools Server Platform Development

0、查询旧版apache的包名,卸载旧版的apache

rpm -q httpd
rpm -e httpd-2.2.15-31.el6.centos.x86_64 --nodeps

1、下载官方源码包并解压:  

wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.12.tar.gz
wget http://mirror.bit.edu.cn/apache/apr/apr-1.5.1.tar.gz
wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

2、解压

tar -xvf httpd-2.4.12.tar.gz
tar -xf apr-1.5.1.tar.gz
tar -xf apr-util-1.5.4.tar.gz 

3、解决依赖关系:

mv apr-1.5.1 httpd-2.4.12/srclib/apr
mv apr-util-1.5.4 httpd-2.4.12/srclib/apr-util

2、切换至源码目录:

cd httpd-2.4.12

3、执行configue脚本:

./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd/ --enable-so

 1 编译参数详解:
 2
 3 --prefix:#安装路径
 4
 5 --sysconfdir:#指定配置文件路径
 6
 7 --enable-so:#DSO兼容,DSO=Dynamic Shared Object,动态共享对象,可实现模块动态生效
 8
 9 --enable-ssl:#支持SSL/TLS,可实现https访问 需已安装openssl-devel
10
11 --enable-cgi:#支持CGI脚本(默认对非线程的MPM模式开启)
12
13 --enable-rewrite:#启用Rewrite功能,URL重写
14
15 --enable-deflate:#支持压缩功能
16
17 --with-zlib:#使用指定的zlib库,不指定路径会自动寻找
18
19 --with-pcre:#使用指定的PCRE库,不指定路径会自动寻找 需已安装pcre-devel
20
21 --with-apr:#指定apr安装路径
22
23 --with-apr-util:#指定apr-util安装路径
24
25 --enable-mpms-shared:#支持动态加载的MPM模块,可选参数:all
26
27 --with-mpm:#设置默认启用的MPM模式,{prefork|worker|event}
28
29 --enable-modules:#支持动态启用的模块,可选参数:all,most,few,reallyall
30
31 #编译之前可使用./configure --help查看各项参数

4、make and make install

make && make install

5、为了方便命令使用需要添加环境变量,编辑二进制程序如何让系统找到:

# cat /etc/profile.d/apache.sh
PATH=/usr/local/apache/bin:$PATH
export PATH

6、头文件输出给系统:

#ln -sv /usr/local/apache/include /usr/local/include/httpd

7、让系统重新生成库文件路径缓存

#ldconfig -v |grep "^[^[:space:]]"

8、启动apache服务:

# apachectl start

9、查看80端口是否被监听:

netstat -ntl

第一次遇到的情况是80端口未被监听,于是打开安装目录下:/usr/local/apache/logs/error_log出现如下提示:

google了一下原因可能,资源受限,不能分配内存

解决方法:

# ulimit -u unlimited   #修改 用户最大进程数  
# echo ulimit -u unlimited >>/etc/profile   #保存修改到自启动文件  

再次查看80端口已被监听:

浏览器访问测试:

原文地址:https://www.cnblogs.com/zm121196/p/9635957.html

时间: 2024-10-03 15:15:31

二进制编译Httpd服务器的相关文章

二进制编译httpd

安装开发工具包 #yum -y groupinstall "Development Tools" "Server Platform Development" 把之前httpd服务关闭并查看状态是否关闭 #systemctl stop httpd#systenctl status httpd 编译前安装编译工具及库 #yum install -y apr* autoconf automake bison bzip2 bzip2* cloog-ppl compat* c

CentOS6.5 LAMP之一编译httpd

apache服务器程序 命令httpd: -t 测试配置文件 -l 静态模块 -D DUMP_MODULES 动态模块 -h获得帮助 -M:相当于-D DUMP_MODULES -D DUMP_VHOSTS:列出虚拟主机 htpasswd: 为基于文件basic认证创建和更新用户认证文件 apachectl 自带脚本 apachectl start 开启httpd服务 httpd服务控制工具: ab:apache benchmark Apache性能基准测试工具 apxs:httpd得以扩展使用

httpd 服务器的三大引擎 prefork、worker、event分析

概述: httpd 2.2之前(2.2也包含在内),不支持动态切换MPM.且在编译时候,只能指定使用哪种MPM.如果,提供了 prefork.worker.event ,要改变MPM,只能在启动httpd服务器程序的时候,指定使用:   /usr/sbin/httpd   /usr/sbin/httpd.event   /usr/sbin/httpd.worker 中的那一个二进制程序. httpd 2.4就支持动态切换MPM,在配置文件中使用[LoadModule]指令就可以实现MPM的切换了

关于Apache (httpd)服务器防DDOS模块mod_evasive的使用说明

关于Apache (httpd)服务器防DDOS模块mod_evasive的使用说明 1. mod_evasive 介绍: mod_evasive 是Apache(httpd)服务器的防DDOS的一个模块.对于WEB服务器来说,是目前比较好的一个防护DDOS攻击的扩展模块.虽然并不能完全防御 DDOS攻击,但在一定条件下,还是起到缓服Apache(httpd)服务器的压力.如果配合iptables.硬件防火墙等防火墙设备配合使用,可能 有更好的效果.可惜LinuxSir.Org 并没有硬件防火墙

编译httpd细节

html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary { display: block } audio,canvas,progress,video { display: inline-block; vertical-align: baseline } audio:not([co

Httpd服务器中构建Web虚拟主机

Web虚拟主机指的是在同一台服务器中运行多个Web站点,其中的每一个站点实际上并不肚子占用整个服务器,因此被成为"虚拟"Web主机.通过虚拟Web主机服务可以充分利用服务器的硬件资源,从而大大降低网站构建及运行成本'虚拟的Web主机有三种类型 基于域名的虚拟主机 基于IP地址的虚拟主机 基于端口的虚拟主机对于基于IP地址的虚拟主机,每个虚拟Web主机使用不同的IP地址,但是都通过同一台httpd服务器对外提供Web浏览服务.正因如此,用来支撑这些虚拟Web主机的服务器就需要大量的网络接

安装httpd服务器及验证

#####安装Apache需要软件包的支持######apr-1.6.2.tar.gzapr-util-1.6.0.tar.gzhttpd-2.4.29.tar.gz·[[email protected] opt]# tar xf apr-1.6.2.tar.gz[[email protected] opt]# tar xf apr-util-1.6.0.tar.gz[[email protected] opt]# tar xf httpd-2.4.34.tar.bz2·[[email prot

二进制编译HTTP

1.编译前安装编译工具及库2.二进制编译环境下载tar包地址:www.apache.org./dist/httpd/3.安装编译环境安装相应包yum install apr apr-util apr-devel arp-util-devel4.解压文件tar xzf httpd-2.4.34 tar.bz2 ,如果是gz2文件:tar jxf httpd-2.4.34.tar.bz25.预编译的安装目录/configure --prefix=/usr/local/apache2 --disabl

linux命令:CA证书制作及httpd服务器证书签核实例

实例:    实现httpd服务器,CA证书服务器,客户端访问httpd网页站点证书有效登录, 证书的安装及发放.openssl证书搭配https服务器配置. 准备工作:需要准备2台服务器: 1.第一台服务器先安装好httpd服务,上一章提到了httpd服务器配置与安装. 这里就不详细解释如何安装httpd和配置httpd服务器IP:10.109.134.249 2.第二台服务器作为CA证书签核服务器,CA证书服务器IP地址:10.109.134.236 1.先确认httpd是否安装过ssl模块