apache服务介绍

一、服务简介

Apache起初由伊利诺伊大学香槟分校的国家超级电脑应用中心(NCSA)开发。此后,Apache Httpd被开放源代码团体的成员不断的发展和加强。Apache Http网站服务器拥有牢靠可信的美誉,已经在全球超过半数的网站中被使用-特别是几乎所有最热门和访问量最大的网站。比方说,维基百科网站服务器就是使用Apache的。
刚开始发展时,Apache只是Netscape网页服务器(现在是Sun ONE)之外的开放源代码选择之一。慢慢地,它开始在功能和速度超越其他基于Unix的HTTP服务器。到了Apache 2.x的时代,实际效率又比Apache 1.x更快,2.x比1.x能同时服务更多的网页连线数。
1996年4月以来,Apache一直是Internet上最流行的HTTP服务器:1999年5月它在57%的网页服务器上运行,到了2005年7月这个比例上升到了69%。在2005年11月最风光的时候达到接近70%的市占率,不过在部分拥有大量域名的主机域名商转换为微软IIS平台后,Apache市占率近年来呈现些微下滑。同时搜索引擎巨擘Google自己的网页服务器平台GWS推出后(也可说是一种修改版的Apache),再加上nginx、Lighttpd等轻量化网页服务器软件在市场上有一些能见度,这些因素都反应在整体网页服务器市占率的消长,Apache的市占率就随之滑落。
根据Netcraft在2009年12月的最新统计数据,Apache的市占率已经降为53.67%,IIS降为18.26%,谷歌网页服务器13.53%,nginx 8.75%。尽管如此,Apache及其各种分支版本仍旧是当前互联网市场上,市占率最高的网页服务器软件。

二、apache工作模式

Apache一共有3种稳定的MPM模式(MPM:多进程处理模块),它们分别是 prefork、worker、event。

  • prefork 工作模式
    Apache在启动之初,就预先fork一些子进程,然后等待请求进来。之所以这样做,是为了减少频繁创 建和销毁进程的开销。每个子进程只有一个线程,在一个时间点内,只能处理一个请求。
    优点:成熟稳定,兼容所有新老模块。同时,不需要担心线程安全的问题。
    缺点:一个进程相对占用更多的系统资源,消耗更多的内存。而且,它并不擅长处理高并发请求。
  • worker 工作模式
    使用了多进程和多线程的混合模式。它也预先fork了几个子进程(数量比较少),然后每个子进程创建一些线程,同时包括一个监听线程。每个请求过来,会被分配到1个线程来服务。线程比起进程会更轻量,因为线程通常会共享父进程的内存空间,因此,内存的占用会减少一些。在高并发的场景下, 因为比起prefork有更多的可用线程,表现会更优秀一些。
    优点:占据更少的内存,高并发下表现更优秀。
    缺点:必须考虑线程安全的问题。
  • event 工作模式
    它和worker模式很像,最大的区别在于,它解决了keep-alive场景下,长期被占用的线程的资源浪费问题。event 工作模式下,会有一个专门的线程来管理这些keep-alive类型的线程,当有真实请求过来的时候,将请求传递给服务线程,执行完毕后,又允许它释放。这样增强了高并发场景下的请求处理能力。 HTTP采用keepalive方式减少TCP连接数量,但是由于需要与服务器线程或进程进行绑定,导致一个繁忙的服务器会消耗完所有的线程。event 工作模式是解决这个问题的一种新模型,它把服务进程从连接中分离出来。在服务器处理速度很快,同时具有非常高的点击率时,可用的线程数量就是关键的资源限制,此时event 工作模式这种方式是最有效的,但不能在HTTPS访问下工作。

三、相关文件位置

源码包编译安装
1) 配置文件位置:
    PREFIX/etc/httpd.conf(主配置文件)
    PREFIX/etc/extra/*.conf(子配置文件)
2) 网页文件位置:
    PREFIX/htdocs/
3) 日志文件位置:
    PREFIX/logs/ 
rpm包安装
1) 配置文件位置:
    /etc/httpd/conf/httpd.conf
2) 网页文件位置:
    /var/www/html/
3) 日志文件位置:
    /var/log/httpd/

四、配置文件解释

对主机环境的基本配置参数
ServerRoot  /usr/local/apache2  #apache根目录
Listen   :80     #监听端口
LoadModule  php7    #加载的相关模块
User  Group      #用户和组
ServerAdmin     #管理员邮箱
ServerName     #服务器名
ErrorLog "logs/error_log     #服务器错误日志
CustomLog "logs/access_log" common   #访问记录日志
DirectoryIndex index.html index.php   #默认网页文件名,优先级顺序
Include  etc/extra/httpd-vhosts.conf  #子配置文件中内容也会加载生效 
主页目录及权限
DocumentRoot "/usr/local/apache2/htdocs"  #网页文件存放目录
<Directory "/usr/local/apache2/htdocs">  #定义指定目录的权限
Options Indexes FollowSymLinks  #额外权限,选项如下(默认浏览权限,软连接权限)
    None            #没有任何额外权限
    All              #所有权限(除去MultiViews以外)
    Indexes          #浏览权限(当此目录下没有默认网页文件时,显示目录内容)
    FollowSymLinks   #准许软连接到其他目录
    MultiViews       #准许文件名泛匹配(需要手动开启模块才有效negotiation)
AllowOverride None   #定义是否允许目录下.htaccess文件中的权限生效,默认不生效
    None          #.htaccess中权限不生效
    All           #文件中所有权限都生效
    AuthConfig    #文件中,只有网页认证的权限生效。
Require all granted(denied) #谁可以访问该页面下的资源,默认所有都被允许。
</Directory>
<IfModule dir_module>   #此标签用来指定访问到指定目录时自动加载哪个页面文件
DirectoryIndex index.php index.html  #可以写多个,但是有优先级之分
</IfModule> 

原文地址:https://www.cnblogs.com/hjnzs/p/12150671.html

时间: 2024-10-21 15:00:43

apache服务介绍的相关文章

第15章01章节 Apache服务介绍,安装及排错

第15章 Apache服务· 15.1Apache介绍 Apache是一款Web服务器软件,有多种产品,可以支持SSL技术,支持多个虚拟主机.它快速.可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中. Apache的特点是简单.速度快.性能稳定,并可做代理服务器来使用.它可以在大多数计算机操作系统中运行,由于其跨平台和安全性被广泛使用. Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作

web服务的简单介绍及apache服务的安装

一,web服务的作用:  是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档.可以放置网站文件,让全世界浏览:   可以放置数据让全世界下载.目前最主流的三个Web服务器是Apache.Nginx.IIS 二,当前互联网主流Web服务软件: Apache:中小型web服务的主流,web服务使用目前排名第一 Nginx:大型网站web服务的主流,目前使用使用增势迅猛,社区活跃,发布更新版本比较快. Nginx的分支Tengine(淘宝网正在使用),目前也在飞速发展. Lig

Linux中要重启apache服务与在windows是有很大的区别,下面我们来介绍一下

在Linux中要重启apache服务与在windows是有很大的区别,下面我们来介绍一下常用的命令,需要的朋友参考下吧(http://www.hnkjlb.com) linux系统为Ubuntu 一.Start Apache 2 Server /启动apache服务 /etc/init.d/apache2 start or $ sudo /etc/init.d/apache2 start 二. Restart Apache 2 Server /重启apache服务 /etc/init.d/apa

Apache服务的安装及工作模式介绍

博文大纲: 一.apache服务器的安装及功能介绍: 二.Apache服务的三种工作模式详解: 三.修改apache的工作模式: 四.apache工作模式的优化与修改: 五.进程与线程的区别. 前言 我们都知道Linux上常见的web服务器有:apache.nginx.tomcat! 其区别如下: apache:模块化服务器,支持模块较多.采用servlet处理模型,同步阻塞模型,工作模式多变,对于高并发的场景处理速度会比较慢,运行稳定. nginx:轻量级web服务器,自身支持模块较少,需要借

在虚拟机上的关于Apache(阿帕奇)(1)开启Apache服务以及介绍基础服务

Apache   使得一台服务器上放很多网站,网站同时访问  可以使网站更安全(木马如果是root权限  如果webshell  apache 可用的命令很少) Apache    80端口(http) https       443端口(https) apache 1~1999  属于系统用户              Apache :指定监听的ip地址.端口号,默认为80 安装Apache(文件报名并不是apache而是httpd) 虚拟网站主机功能 Apache的虚拟主机功能 (Virtu

Centos7+Nginx+Keepalived实现Apache服务的高可用&负载均衡

Centos7+Nginx+Keepalived实现Apache服务的高可用&负载均衡 今天是2017年的第一天,昨天也就是2016年的最后一天,我尝试部署了Centos7+Nginx+Keepalived实现WEB服务的高可用负载均衡服务,终于在2017年的第一天前完成了,所以在此分享给有需要的朋友:说到负载均衡,其实在linux下有很多服务可以实现,比如nginx.haproxy.lvs等服务,当前我们在前面的文章有介绍过了,但是对于高可用服务,我们在linux下最常见也是应用最多的是Kee

Web服务介绍 & httpd安装

Web简介 什么是Web WWW:World Wide Web,万维网 英国人TimBerners-Lee在1989年欧洲共同体的一个大型科研机构工作时发明的 Web是一种超文本信息系统,其主要实现方式是超文本连接 Web特点 1.Web页面的图形化和易于链接 2.Web与操作系统.浏览器平台无关 3.分布式 4.动态习惯 5.交互性 Web工作原理 HTTP(Hyper Text Transfer Protocol,超文本传输协议):提供了访问超文本信息的功能,是Web浏览器和Web服务器之间

第10章 使用Apache服务部署静态网站

章节简述: 本章节中通过对比目前热门的网站服务程序来说明Apache服务程序的优势,并新增主机空间选购技巧小节. 了解SELinux服务的3种工作模式,小心谨慎的使用semanage命令和setsebool命令配置SELinux安全上下文和服务监管策略. 学习Apache网站服务程序的基本部署.个人用户主页功能以及基于IP地址.主机名(域名).端口号的虚拟主机功能. 本章目录结构 10.1 网站服务程序 10.2 安装Apache服务程序 10.3 配置服务文件参数 10.4 强制访问控制安全子

LINUX服务介绍(清晰版)

http://www.linuxdiyf.com/viewarticle.php?id=172539 服务列表(按字母顺序排列) 服务名 必需(是/否) 用途描述 注解 acon 否 语言支持 特别支持左手书写语言:阿拉伯语,波斯语和希伯莱语 acpi 否 电源管理 手提电脑电池电扇监控器 acpid 否 监听精灵进程 此进程监听并分配内核中的acpi事件 adsl 否 内部ADSL开关控制 只有你的计算机内部有互联网连接adsl开关时才用到此服务 alsa 否 高级Linux声音构件 这个单独