一、使用rpm -ql httpd可以查看rpm包安装的httpd文件及其路径
    1、配置文件:
        /etc/httpd/conf/httpd.conf    #主配置文件
        /etc/httpd/conf.d/welcome.conf    #无首页所指定的链接文件
    2、服务脚本:
        /etc/rc.d/init.d/httpd    #服务起停脚本
        /etc/sysconfig/httpd    #脚本配置文件
    3、模块目录:
        /usr/lib64/httpd/modules:存放了各种以.so结尾的httpd所需的模块
        /etc/httpd/modules:链接文件,链接到上面的模块目录
    4、主程序:httpd支持三种MPM(多路处理模块),也就是并发响应模式,同时且只能有一个MPM工作
        /usr/sbin/httpd:基于prefork,内核会为每一个用户请求分配一个进程,性能较低,但是最稳定可靠,依赖于prefork.c模块
        /usr/sbin/httpd.worker:基于worker,内核为每个用户请求分配一个线程,多个线程由一个进程管理,减轻了多个进程间切换所消耗的cpu时间,依赖于worker.c模块
        /usr/sbin/httpd.event:httpd2.4以上支持,低于2.4版本的只为实验状态,基于event,支持一个线程响应多个用户的请求,依赖于event.c模块
     

5、日志文件目录:
        /var/log/httpd/access_log:访问日志
        /var/log/httpd/error_log:错误日志
    6、站点文档根目录:
        /var/www/html/:默认

二、httpd配置文件说明
        httpd.conf配置文件由3部分组成,分别为全局环境配置、主服务配置以及虚拟主机配置,其中主服务配置与虚拟主机不能同时使用
       

1、全局环境配置项
       

Timeout:接送和发送资源超时时间
        KeepAlive:是否开启保持会话连接功能,开启后可避免同一用户请求资源时重复进行TCP三次握手四次断开
        MaxkeepAliveRequests:同一用户端保持会话最多允许请求的资源链接次数,超过次数会断开重新连接
        KeepAliveTimeout:保持会话连接后允许的最大超时时间,此时间未有资源请求会断开保持的会话        
       

基于prefork的用户会话处理方式:
        StartServers:默认开启等待用户连接的进程数
        MinSpareServers:最少等待用户连接的空闲进程数
        MaxSpareServers:最多等待用户连接的空闲进程,超过则杀死多余空闲进程
        ServerLimit:限制最大用户请求会话连接数
        MaxClients:最大响应用户会话的进程数,一般与ServerLimit相等
        MaxRequestsPerChild:一个进程生存期间能够处理的会话数,超过则关闭此进程
       

基于worker.c的用户会话处理方式:
        StarServers:默认开启的等待用户连接的进程数
        MaxClients:能够同时处理的用户请求会话连接
        MinSpareThreads:最小空闲线程数
        MaxSpareThreads:最大空闲线程数
        ThreadsPerChild:每个进程下的线程数
        MaxRequestsPerChild:每个进程生存期间能够处理的最大会话数,0为不限制
       

监听端口,默认为监听服务器所有网卡的80端口
        Listen IP:PORT的方式可以指定监听固定IP及端口
        Listen可重复指定多次
       

DSO机制装载的模块
            格式为:LoadModule 模块名 模块路径
        httpd -D DUMP_MODULES命令可查看装载的模块
       

指定运行httpd的用户和组,默认为apache用户和apache组
        为安全起见,请尽量避免使用系统用户与root用户
    2、主服务配置段
       

指定服务器主机名,如果没有指定httpd会尝试用主机名解析IP,如解析不到会用主机名代替
       

指定网站根目录,默认为/var/www/html
       

站点路径访问控制:
            Directory:基于本地文件系统路径做访问控制
            Location:基于URL访问路径做访问控制
            Options:可以在选项后加“-”关闭此功能
                Indexes:当访问的路径下无默认的主页面,将所有资源以列表的形式呈现给用户,非常危险
                FollowSymLinks:支持符号链接访问资源
            AllowOverride:支持在每个页面目录下创建.htaccess用户实现对此目录中资源访问时的控制功能
            Order,Deny,Allow:基于IP做访问控制
       

DirectoryIndex:定义默认的主页,优先级由左到右
       

ErrorLog:错误日志文件路径
        LogLevel:错误日志记录级别,高于此级别的报警才会记录日志
       

LogFormat:访问日志的记录格式
        CustomLog:访问日志路径及所用格式名
       %h: 客户端地址
       %l: 远程登录名,通常为-
       %u: 认证时输入用户名,没有认证时为-
       %t: 服务器收到 用户请求时的时间
       %r:请求报名的起始行
       %>s: 响应状态码
       %b: 响应报文的长度,单位是字节
       %{HEADER_NAME}i: 记录指定首部对应的值
       

Alias:路径别名,实现URL路径的映射,从而访问的资源不再依赖于站点根目录

ScriptAlias:CGI脚本路径别名

AddDefaultCharset:默认字符集

对网站基于用户认证做访问控制:

AllowOverride:

AuthConfig启用认证

AuthType:认证类型

Basic:基本认证,明文传输,常用

digest:摘要认证,密文传输,某些浏览器不支持

AuthName:认证显示信息

AuthBasicProvider:基本认证模式,默认为file格式

AuthUserFile:认证文件路径

Require:允许访问的认证用户

valid-user:允许.htpasswd文件中所有用户访问

user USERNAME:允许.htpasswd中的某用户访问

转载于:https://blog.51cto.com/princepar/1665008

httpd配置文件详解(上)相关推荐

  1. Apache配置文件httpd.conf详解

    转自:http://www.jianshu.com/p/c36dd3946e74 Apache配置文件httpd.conf详解 Apache的配置由httpd.conf文件配置,因此下面的配置指令都是 ...

  2. apache配置文件详解与优化

    apache配置文件详解与优化 一.总结 一句话总结:结合apache配置文件中的英文说明和配置详解一起看 1.apache模块配置用的什么标签? IfModule 例如: <IfModule ...

  3. httpd2.2配置文件详解

    一丶Apache常用目录详解 1) /etc/httpd/conf/httpd.conf httpd.conf是Apache的主配文件,整个Apache也不过就是这个配置文件,里面几乎包含了所有的配置 ...

  4. nginx的配置文件详解

    文章目录 1. nginx的配置文件详解 2. nginx.conf配置详解 3. 用于调试.定位问题的配置参数 4. 正常运行必备的配置参数 5. 优化性能的配置参数 6. 事件相关的配置:even ...

  5. 配置nginx方向代理,实现URL隐形转发 (附带nginx配置文件详解)

    配置nginx方向代理,实现URL隐形转发 (附带nginx配置文件详解) 免费领取满减阿里云红包 项目名称:[域名解析–隐形URL转发]–centos 7.3 环境: 阿里云服务器之上有多个tomc ...

  6. Apache 的 httpd.conf 详解 【转】

    文章来源:Apache 的 httpd.conf 详解(很实用) ServerRoot "/usr/local" ServerRoot用于指定守护进程httpd的运行目录,http ...

  7. Apache httpd.conf详解

    ServerRoot "/usr/local" ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件 ...

  8. Apache 的 httpd.conf 详解

    ServerRoot "/usr/local" ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件 ...

  9. nginx平滑升级与配置文件详解

    nginx平滑升级与配置文件详解 文章目录 nginx平滑升级 nginx配置文件 nginx.conf配置详解 用于调试.定位问题的配置参数 正常运行必备的配置参数 优化性能的配置参数 网络连接相关 ...

最新文章

  1. linux Shell学习笔记第五天
  2. altium designer寻找未连接飞线
  3. [Abp 源码分析]多租户体系与权限验证
  4. 使用OAuth 2 / OpenID Connect的SSO的Spring Boot 2本机方法
  5. everything安装版和便携版有什么区别_A2奶粉内幕:国行版和澳洲版有什么区别 贵的不一定好!...
  6. 当你在浏览器输入一个网址,如http://www.taobao.com,按回车之后发生了什么?请从技术的角度描述,如浏览器、网络(UDP、TCP、HTTP等),以及服务器等各种参与对象上由此引发的一系
  7. docker安装nextcloud(附nextcloud win7客户端下载教程)
  8. 两种方法解决pip、conda安装库时慢的问题
  9. android uid变化,在Android中安装期间确定应用的UID如何?
  10. 新品Demo —— ZStack CMP多云管理平台
  11. 关闭455端口相关服务
  12. 职业教育计算机教育美育,中职计算机职业素质教育
  13. java实现约瑟夫环完整算法_Java简单实现约瑟夫环算法示例
  14. IntentFilter
  15. 平方的和与和的平方之差
  16. 女人要知道的311件事儿
  17. 《你不可不知道的法律常识》读书摘记
  18. Hibernate的cascade属性
  19. 51lcd显示光传感器c语言程序,基于51单片机1602液晶显示GY-30数字光照传感器BH1750FVI程序实例...
  20. 用html+css+jQuery制作一个简单的流程图/步骤图

热门文章

  1. .pyc文件还原.py文件_Python文件.py转换为.exe可执行程序,制作.exe文件图标
  2. ORACLE中的自治事务
  3. Java学习笔记2.5.2 循环结构 - 计数循环
  4. VB讲课笔记01:VB6.0安装与启动
  5. 【HDU1166】敌兵布阵,线段树练习
  6. subsonic 3.0 mysql_SubSonic 3.0新特性
  7. page fault in nonpaged area 蓝屏_电脑蓝屏解决四个小技巧
  8. shell 倒数第n列_【零基础学云计算】Shell编程之正则表达式(三)
  9. 2017.8.11 OSU 失败总结
  10. 2017.5.9 运输计划 失败总结