众所周知,httpd是运维工程师的重中之重,下面我们来了解一下httpd服务。

    我们以CentOS6为例。

   1:我们先来安装一下httpd   yum -y install httpd

   2:启动httpd服务,service httpd start   然后关上你的防火墙  iptables -F  打开你的浏览器输入自己的IP 就会出现页面。这是在/etc/httpd/cond.d/welcome.conf配置的。

   3:好了 ,我们的httpd服务就起来了,下面我们来看一下它的主配置文件。/etc/httpd/conf/httpd.conf

       httpd的主配置文件有3个配置段组成:

              33 ### Section 1: Global Environment:全局配置

              245 ### Section 2: 'Main' server configuration:主机配置

              973 ### Section 3: Virtual Hosts:虚拟主机配置

      不过,主机配置和虚拟主机配置不会同时生效。

   要是要修改配置文件最后先备份,这是防患于未然,修改后要用httpd -t 测试一下

修改监听的地址端口

              Listen [IP:]PORT(端口)   

     可定义多次:如   Listen 80       Listen 8080

     省略IP,标示0.0.0.0

3: MPM:多路处理模块

       定义httpd基于何种并发模型来影响大容量的用户请求

    常见的有三种模型:

            prefork:一个进程响应一个请求

            worker: 一个线程响应一个请求

            event:一个进程响应多个请求

    因为我们用的是httpd 2.2的版本,MPM机制不支持DSO机制,event为测试模式

我们可以用dttpd -M 命令查看所有模块  默认为prefork  如果你想修改MPM模式,在/etc/sysconfig/httpd

        在/etc/httpd/conf/httpd.conf主配置文件下有MPM各种模式的详细参数

   我们以perfork为例:

                103 StartServers       8  :预见创建的空子进程数为8个

                104 MinSpareServers    5  :最小空闲进程为5个 

                105 MaxSpareServers   20  :最大空闲进程为20个

                106 ServerLimit      256  :能够响应的服务进程数256个

                107 MaxClients       256   :最大客户端数量为256个

                108 MaxRequestsPerChild  4000 :一个进程最大响应的进程次数为4000次

  4.DSO:动态模块装载

           通常用LoadModule命令

               格式为:LoadModule   Mod-name  modules/Module.file.so

    一般使用相对路径,相对于SereverRoot指令的路径而言:/etc/httpd/

  5.'Main'Server :主服务器

            在主配置文件/etc/httpd/conf/httpd.conf下面找到ServerName,定义主机名如:

                               ServerName

        如果你想制定访问路径,修改DocumentRoot "/var/www/html"    默认为/var/www/html

6、站点资源访问控制

基于文件系统进行

<Directory "/PATH/TO/SOME_DIR">

</Directory>

<File "">

</File>

<FileMatch "PATTERN">

</FileMatch>

基于url路径进行

<Location "/PATH/TO/SOME_URL">

</Location>

<LocationMatch "URL_PATTERN">

...

</LocationMatch>

目录中的常用指令:

(1) Options:用于定义资源的展示方式;后跟以空白字符分隔的“选项”列表

Indexes:允许索引;一般不允许

FollowSymLinks:允许跟踪符号链接;一般不允许 SymLinksifOwnerMatch:属主一致,可以跟踪

ExecCGI:允许执行CGI脚本;

7.定义站点主页面:

                   DirectoryIndex index.html index.html.var自左而右搜索

在主配置文件下面还有很多需要我们注意的地方。多加学习吧