中间件-apache详解

简介:

apache http server(简称apache)是现在使用世界排名第一的web服务器,几乎可以应用在任何平台。它是一个开源的网页服务器,特点是简单,速度快,稳定性高,还可以作为代理服务器。

特性:
  • 支持最新的HTTP/1.1通信协议
  • 配置文件简单,易操作,用户可以通过直接修改apache的配置文件信息来修改apache
  • 支持实时监控服务器状态和定制服务器日志
  • 支持基于IP和基于域名的虚拟主机
  • 支持多种方式的HTTP认证
  • 支持服务端包含指令(SSI)
  • 支持安全Socket层(SSL)
  • 支持用户会话过程的跟踪
  • 支持FastCGI
  • 通过第三方模块可以支持JavaServlets
  • 支持多进程
安装

linux下 yum install httpd

启动,停止命令

service httpd start 启动

service httpd stop 停止

service httpd restart 重启

Apache主要目录和配置

查看apache全部配置内容 cat httpd.conf|egrep -v"^.*#|^$"|nl

配置 解释
ServerRoot "/etc/httpd" apache的安装目录
Listen 80 监听端口
user apache apache的用户默认
Group apache apache的组默认
ServerAdmin [email protected] 系统管理员邮箱
ServerName localhost:80 服务器名称
对根目录的限制
AllowOverride none 表示禁止用户对目录配置文件(.htaccess进行修改)重载,普通站点不建议开启
Require all denied 拒绝所有来源访问
DocumentRoot “/var/www/html" apache的默认web站点目录路径
apache 工作模式

Apache一共有3中MPM(多进程处理模块),prefork,worker,event。

Prefork MPM:在启动之初,会预派生fork一些子进程,然后等待请求进来,并且总会保持一些备用的子进程,同时派生出的每个子进程中都只有一个进程,在一个时间点内,只能处理一个请求。

worker MPM:是使用了多进程+多线程的模式。它也预先fork了几个子进程(数量比较少),每个子进程能够生成一些服务线程和一个监听线程,该监听线程监听接入请求并将其传递给服务线程处理和应答。

event MPM:event MPM中,会有一个专门的线程来管理这些 keep-alive 类型的线程,当有真实请求过来的时候,将请求传递给服务线程,执行完毕后,又允许它释放。这样,一个线程就能处理几个请求了,实现了异步非阻塞。

apache监控

在配置文件添加一段Location,配置完后重启apache,访问http://ip地址/server-status

将此段代码取消注释,并修改为如下所示

ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order Deny,Allow
Allow from all
</Location>

保存退出,重启 service httpd restart

定时刷新 http://ip/server-status?refresh=N,每 N 秒自动刷新一次。

采集数据 http://ip/server-status?auto

apache监控指标

linux下监控apache

1.用 ps 来看 httpd 进程数: ps aux|grep httpd|wc -l

2.用 netstat 来看当前的连接数:netstat -ant|grep ":80"|wc -l

3.实时检测httpd连接数:watch -n 1 -d “pgrep httpd|wc -l”

4.计算httpd进程占用内在的平均数:ps aux|grep -v grep|awk ‘/httpd/{sum+=$6}; END{print sum/n}’

5.查看Apache的并发请求数及期TCP连接状态:netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}‘

原文地址:https://www.cnblogs.com/tudouxifan/p/9146690.html

时间: 2024-11-08 19:49:06

中间件-apache详解的相关文章

linux下安装apache详解

下载httpd-2.2.6.tar.bz2  把httpd-2.2.6.tar.bz2放到/soft 下[[email protected] ~]#cd /soft[[email protected] soft]#tar jxvf httpd-2.2.6.tar.bz2    //解压apache的压缩包[[email protected] soft]#cd httpd-2.2.6     //定位到httpd-2.2.6 文件夹下[[email protected] httpd-2.2.6]#

apache详解

apache的优点: 1.事先加载响应程序 2.模块化设置,核心较小,各功能由模块进行添加 3.支持独立编译模块 一.编译安装apache tar zxvf /root/python/httpd-2.2.17.tar.gz  -C /usr/src/ cd /usr/src/ ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-cgi --enable--charset-lite make &&am

express文件上传中间件Multer详解

Express默认并不处理HTTP请求体中的数据,对于普通请求体(JSON.二进制.字符串)数据,可以使用body-parser中间件.而文件上传(multipart/form-data请求),可以基于请求流处理,也可以使用formidable模块或Multer中间件. 1. multer中间件 Multer是Express官方推出的,用于Node.jsmultipart/form-data请求数据处理的中间件. 它基于busboy构建,可以高效的处理文件上传,但并不处理multipart/fo

linux下手动安装apache详解

操作系统:ubuntu12.04 前言:    linux下,默认安装软件,在开发过程中会经常不知道到什么路径下找到所需的程序,因此手动安装程序对后续的使用会提供非常大的便利.在此,以安装apache为例. 一,准备    1,安装 apr        下载地址:http://apr.apache.org/download.cgi [[email protected]:/work/soft/apache]# tar jxvf apr-1.5.0.tar.bz2 [[email protecte

源码编译安装apache详解(2014-11-13)

一.下载Apache 2.4及依赖包 Apache官网下载:http://apache.fayea.com/apache-mirror/httpd/ 由于Apache依赖于APR.APR-Util和PCRE,所以需要下载: APR + APR-Util:http://mirror.bjtu.edu.cn/apache//apr/ PCRE:http://sourceforge.net/projects/pcre/files/pcre/ 在此,笔者使用均为目前最新版本,Apache 2.4.10,

Apache详解:

PHP高级工程师之Apache 在这里和大家分享一下Apache日志的概念及操作(包含Linux和Windows). 如有不善,多提意见(QQ:1595068971-邮箱:[email protected]) 日志文件: 访问日志,错误日志,定制日志,日志分析,其他. Apache日志一:访问日志(想要知道什么人在什么时候浏览了浏览器哪些内容) 访问日志格式: Apache内建了记录服务器活动功能(日志),如果Apache是默认方式安装,服务器运行会生成两个日志文件.分别是access_log和

RabbitMQ,Apache的ActiveMQ,阿里RocketMQ,Kafka,ZeroMQ,MetaMQ,Redis也可实现消息队列,RabbitMQ的应用场景以及基本原理介绍,RabbitMQ基础知识详解,RabbitMQ布曙

消息队列及常见消息队列介绍 2017-10-10 09:35操作系统/客户端/人脸识别 一.消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要进行控制的时候,差不多就是需要使用消息队列的时候. 消息队列主要解决了应用耦合.异步处理.流量削锋等问题. 当前使用较多的消息队列有RabbitMQ.RocketMQ.ActiveMQ.Kafka.ZeroMQ.MetaMq等,而部分数据库如Re

Nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第三部分

Nginx反向代理.动静分离.负载均衡及rewrite隐藏路径详解 (Nginx Apache MySQL Redis) 楓城浪子原创,转载请标明出处! 更多技术博文请见个人博客:https://fengchenglangzi.000webhostapp.com 微信bh19890922 QQ445718526.490425557 三.Nginx动静分离及负载均衡 3.1 Nginx安装 请参考:https://fengchenglangzi.000webhostapp.com/?p=511 亦

PHP100-第二讲 PHP5.4 Apache Mysql 搭配与多站点配置详解

PHP5.4环境搭配基本流程 关于新版的PHP环境的一个搭配过程,与之前的 php5.3.x 没有太大差异, 这次使用的环境搭配组建包括: httpd-2.2.21-win32-x86 mysql-5.5.18-win32 php-5.4.0RC4-Win32-VC9-x86 //================= LoadModule php5_module "c:/www/php54/php5apache2_2.dll" AddType application/x-httpd-ph