源码编译安装Apache

这篇具有很好参考价值的文章主要介绍了源码编译安装Apache。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

源码编译安装Apache,Linux入门到精通,1024程序员节,原力计划

目录

✨apache安装步骤

🍭挂载镜像

🍭解压并安装

🍭安装主程序

🍭优化链接及服务

🍭查看httpd模块

🍭查看mpm配置文件

🍭查看apache主页

🍭使用ab命令进行压力测试


   🦐博客主页:大虾好吃吗的博客

   🦐专栏地址:Linux从入门到精通

 

apache安装步骤

  • 检查是否已经rpm安装httpd服务,已安装则卸载服务。
[root@localhost ~]# rpm -e `rpm -qa | grep httpd` --nodeps
  • 开发工具安装

        如果编译安装无法执行,可能是开发工具没有安装,执行下面命令即可安装。(如已安装则跳过即可)。

[root@localhost ~]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
  • httpd安装

挂载镜像

        查看虚拟机使用ISO镜像,设备状态勾选已连接和启动时连接后确定即可。

源码编译安装Apache,Linux入门到精通,1024程序员节,原力计划

解压并安装

 [root@localhost ~]# mkdir /sh
 [root@localhost ~]#  cd /sh
 [root@localhost sh]# vim add.sh
#!/bin/bash
mount /dev/cdrom /media/
tar zxf /media/apr-1.5.2.tar.gz -C /usr/src
cd /usr/src/apr-1.5.2
./configure --prefix=/usr/local/apr && make && make install
tar zxf /media/apr-util-1.5.4.tar.gz -C /usr/src
cd /usr/src/apr-util-1.5.4
./configure --prefix=/usr/locl/apr-util --with-apr=/usr/local/apr && make && make install
yum -y install zlib-*
tar zxf /media/pcre-8.39.tar.gz -C /usr/src
cd /usr/src/pcre-8.39
./configure --prefix=/usr/local/pcre && make && make install
tar zxf /media/openssl-1.0.1u.tar.gz -C /usr/src
cd /usr/src/openssl-1.0.1u
./config -fPIC --prefix=/usr/local/openssl enable-shared && make && make install
保存退出脚本并执行脚本文件,等待脚本执行完成并确认成功。
[root@localhost sh]# sh add.sh

安装主程序

        下面通过脚本来安装主程序。

[root@localhost sh]# vim httpd.sh
#!/bin/bash
tar zxf /media/httpd-2.4.25.tar.gz -C /usr/src
cd /usr/src/httpd-2.4.25
./configure --prefix=/usr/local/httpd --enable-so --enable-cgi --enable-cgid --enable-ssl --with-ssl=/usr/local/openssl --enable-rewrite --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --with-mpm=event --enable-proxy --enable-proxy-fcgi --enable-expires --enable-deflate && make && make install

        保存退出脚本并执行脚本文件,等待脚本执行完成并确认成功。

优化链接及服务

[root@localhost sh]# ln -s /usr/local/httpd/bin/* /usr/local/bin //链接优化
[root@localhost sh]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd //添加服务
[root@localhost sh]# vim /etc/init.d/httpd
第二行添加下面两行命令
# chkconfig: 35 85 15     \\声明服务启动级别,开机启动顺序,关机关闭顺序
# description: apache 2.4.25 \\服务声明,简要信息
保存并退出


[root@localhost sh]# chkconfig --add httpd //添加到系统服务
[root@localhost sh]# chkconfig httpd on //设置开机自启
[root@localhost sh]# systemctl start httpd //开启服务

查看httpd模块

        安装后可以通过下面三行命令查看各项模块。

httpd -V         #查看版本和已装模块

httpd -l           #只查看静态编译模块

httpd -M         #查看所有模块  

查看mpm配置文件

vim /usr/local/httpd/conf/extra/httpd-mpm.conf

<IfModule mpm_event_module>

StartServers 3                                             #apache 启动时候默认开始的子进程数

MinSpareThreads 75                                  #最小空闲数量的工作线程

MaxSpareThreads 250                               #最大空闲数量的工作线程

ThreadsPerChild 25                                    #每个子进程产生的线程数量

MaxRequestWorkers 400                            #允许同时的最大接入请求数量

MaxConnectionsPerChild 0                         #每个子进程可处理的请求数

</IfModule>

#企业推荐参数

<IfModule mpm_worker_module>

StartServers          2                          #推荐设置:小=默认 中=3~5 大=5~10

MaxClients          150                        #推荐设置:小=500 中=500~1500 大型=1500~3000

MinSpareThreads      25                   #推荐设置:小=默认 中=50~100 大=100~200

MaxSpareThreads      75                  #推荐设置:小=默认 中=80~160 大=200~400 ThreadsPerChild      25                     #推荐设置:小=默认 中=50~100 大型=100~200

MaxRequestsPerChild   0                 #推荐设置:小=10000 中或大=10000~50000(此外,如果MaxClients/ThreadsPerChild大于16,还需额外设置ServerLimit参数,ServerLimit必须大于等于 MaxClients/ThreadsPerChild 的值。)

</IfModule>

查看apache主页

        通过访问http://192.168.1.2可以看到apache默认网站。

源码编译安装Apache,Linux入门到精通,1024程序员节,原力计划

使用ab命令进行压力测试

        通过上面命令已经启动httpd服务,通过ab工具测试httpd服务,如未安装通过下面命令安装ab命令工具(打开第二台服务器对第一台httpd服务器进行测试)。

[root@localhost ~]# yum -y install httpd-tools
安装完毕后执行下面命令对服务器进行200人并发访问,发出10000个请求。
[root@localhost ~]# ab -c 200 -n 10000 http://192.168.1.2/index.html
This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 192.168.1.2 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests


Server Software:        Apache/2.4.25
Server Hostname:        192.168.1.2
Server Port:            80

Document Path:          /index.html
Document Length:        45 bytes

Concurrency Level:      200
Time taken for tests:   3.803 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      2890000 bytes
HTML transferred:       450000 bytes
Requests per second:    2629.29 [#/sec] (mean)
Time per request:       76.066 [ms] (mean)
Time per request:       0.380 [ms] (mean, across all concurrent requests)
Transfer rate:          742.06 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0   22 153.7      2    3008
Processing:     8   47  34.1     44     451
Waiting:        4   44  33.0     43     435
Total:         28   69 157.9     46    3057

Percentage of the requests served within a certain time (ms)
  50%     46
  66%     49
  75%     51
  80%     54
  90%     62
  95%     80
  98%    267
  99%   1048
 100%   3057 (longest request)

        通过以上操作就对httpd服务的配置完成了,关于其他配置敬请期待。文章来源地址https://www.toymoban.com/news/detail-721243.html

到了这里,关于源码编译安装Apache的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从入门到精通:解锁Linux开发工具和编译器的力量

    vim是一个方便编程的功能特别丰富的文本编辑器,凭借他简洁的三种模式以及丰富的快捷键操作,可使得熟练使用的人做到不使用鼠标完成代码的编写,所以深受人们喜爱。 vim是一个 多模式 的编辑器——命令行模式、插入模式、底行模式。三种模式的转换及关系如下: 下面

    2024年02月11日
    浏览(47)
  • Linux CentOS 8 编译安装Apache Subversion

    距离上一篇发表已经过去了5年零2个多月,这次重新开始写技术博客,理由和原来一样,也就是想把自己学习和工作中遇到的问题和知识记录下来,今天记录一下Linux CentOS 8通过编译安装 svn 的过程。 下载地址:链接: https://subversion.apache.org/download.cgi 进入下载页面后,我们可以

    2024年02月15日
    浏览(56)
  • 【安装】grpc源码编译安装(Linux)

    修改构建套件的CMake Tool为新建的CMake 选择grpc源码目录中的CMakeLists.txt(grpc/CMakeLists.txt) 初始打开,会弹出窗,设置cmake编译的构建目录;(构建产生的构建文件都会生成在该目录下) 初始打开,设置构建目录后,会弹出窗设置CMake参数; 点击CMake,执行CMake;(最终会生成

    2024年04月27日
    浏览(48)
  • linux编译源码,安装valgrind

    目录 1 下载源码 2 在虚拟机上解压 3 进入解压的目录,执行make 4 安装 5 检查安装是否成功 本文参考了内存检查工具valgrind介绍、安装与使用-CSDN博客 我到Valgrind: Current Releases 下载了valgrind 3.22.0源码 我使用的虚拟机是银河麒麟

    2024年01月22日
    浏览(49)
  • 【MySQL入门到精通-黑马程序员】MySQL基础篇-SQL概述及DDL

    本专栏文章为观看黑马程序员《MySQL入门到精通》所做笔记,课程地址在这。如有侵权,立即删除。 SQL语句可以单行或多行书写,(默认)以分号结尾。 SQL语句可以使用空格/缩进来增强语句的可读性。 MySQL数据库的SQL语句不区分大小写,建议使用大写。 注释: 单行注

    2024年02月13日
    浏览(43)
  • Linux 上安装PostgreSQL-源码编译安装(超详细版!!!)

    服务器:CentOS Linux 7 (Core),4CPU 8GB  100GB磁盘。 最小配置 CPU: 至少 2 核心 内存: 至少 2 GB 硬盘: 至少 10 GB 空间,推荐使用 SSD 以提高性能 网络: 100 Mbps 场景:这种配置适用于轻量级的测试,如功能验证、小型应用的开发等。 推荐配置 CPU: 4 核心或以上 内存: 8 GB 或以上 硬盘:

    2024年01月23日
    浏览(94)
  • 千峰云计算linux教程650集,linux系统运维从入门到精通教程(Linux安装极速入门,零基础必备)

    第一天 1. 完成VMware下载,centos7下载,完成配置,获得模拟服务器一台。 2. 使用root登录。 服务器 (可以当初普通计算机,与普通的计算机内部结构相差不大) VMware是安装虚拟机的软件 (通过一些软件在一台主机或服务器系统中模拟出来的一台电脑,实际上就是一个比较大

    2024年01月17日
    浏览(46)
  • 1024 程序员节,圆一个小小的梦

    Hope is a good thing, maybe the best of things, and no good thing ever dies. 希望是件美丽的东西,也许是最好的东西,而美好的东西是永远不会消逝的。 大家好,我是勇哥 。 1024 , 程序员节,圆了我一个小小的梦。 花了半年时间,我写了一本电子书 ,书名是:《 RocketMQ4.X设计精要 》,我想

    2024年02月08日
    浏览(71)
  • Docker系列(1)安装Linux系统编译Android源码

    目录 一、开发环境搭建 1.Windows docker环境安装 2.配置ubuntu18.04系统 2.0 准备工作 2.1 安装ubuntu18.04 2.2 安装常用工具 2.3 安装rk3568环境编译工具 2.4 新增用户 2.5 注意避坑!! 二、下载编译 Android_SDK 3.1 第一步,下载 SDK 3.2 第二步,更新 SDK 3.3 第二步,编译 SDK 手动编译 iCore-3568JQ An

    2024年02月11日
    浏览(45)
  • 【MySQL8入门到精通】基础篇- Linux系统静默安装MySQL,跨版本升级

    📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10年DBA工作经验 一位上进心十足的【大数据领域博主】!😜😜😜 中国DBA联盟(ACDU)成员,目前从事DBA及程序编程 擅长主流数据Oracle、MySQL、PG 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。

    2023年04月09日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包