httpd配置

HTTP:Hypertext Transfer Protocol;html

HTML:Hypertext Markup Language;nginx

URL:Uniform Resource Locator,在Internet的WWW服务程序上用于指定信息位置的表示方法;web

  Scheme://Server:Port/path/to/resource;apache

  http://www.mageedu.com/images/logo.jpg;后端

一次完整的http请求过程:centos

  创建或处理链接 --> 接受请求 --> 处理请求 --> 访问资源 --> 构建响应报文 --> 发送响应报文 --> 记录日志;服务器

http服务器程序:tcp

  httpd(apache);nginx;lighttpd;ide

http监听端口:80/tcp,https监听端口:443/tcp;ui

centos6支持安装httpd-2.2,centos7支持安装httpd-2.4;

特别配置:

  一、持久链接

    链接创建,每一个资源获取完成后不会断开链接,而是等待其余请求,访问量较大的服务器,持久链接功能会使有些请求得不到响应;

    折中方法,使用较短的毫秒级持久时间:

      KeepAlive On|Off

      MaxKeepAliveRequests #

      KeepAliveTimeout #

  二、站点访问控制

    可基于两种类型的路径指明对哪些资源进行访问控制:

      文件系统路径:

        <Directory " ">

        </Directory>

      URL路径:

        <Location " ">

        </Location>

  三、日志设定

    错误日志:

      ErrorLog logs/error_log

      LogLevel warn(记录warn以上级别的日志)

    访问日志:

      CustomLog logs/access_log combined

      LogFormat ...

  四、基于用户访问控制

    基于用户认证:

      <Directory "/var/www/html/SOME"> //要登陆进入的目录

        Options None

        AllowOverride None

        Auth Type Basic

        AuthName "STRING"  //认证提示符

        AuthUserFile "/PATH/TO/HTTPD_USER"  //帐号密码存放的目录

        Require user username1 username2...

        Require voild-user  //容许文件中全部用户

      </Directory>

      设置帐号密码存储:htpasswd命令

        htpasswd -bm /etc/httpd/conf.d/.htuser username userpasswd

    基于组认证:

      <Directory "/var/www/html/admin"> 

        Options None

        AllowOverride None

        AuthType Basic

        AuthName "administrator private"

        AuthUserFile "/etc/httpd/conf.d/.htpasswd"

        AuthGroupFile "/etc/httpd/conf.d/.htgroup"

        Require group webadmin

      </Directory>

      组文件中:每行定义一个组

        webadmin:user1 user2 ...

  五、虚拟主机

    基于IP:

      为每一个虚拟主机准备至少一个ip地址;

    基于port:

      为每一个虚拟主机准备至少一个专用port,实践中不多使用;

    基于hostname:

      注意:通常虚拟主机莫与中心主机混用,因此要是用虚拟主机,先禁用中心主机,注释DocumentRoot;

    每一个虚拟主机都专用配置:

    <VirtualHost *:80>

      ServerAdmin webmaster@dummy-host.example.com

      DocumentRoot /www/docs/dummy-host.example.com

      ServerName dummy-host.example.com

      ErrorLog logs/dummy-host.example.com-error_log

      CustomLog logs/dummy-host.example.com-access_log common

    </VirtualHost>

  status:状态码,标记请求过程当中发生的状况;

    100-101:信息提示;

    200-206:成功;

    300-305:重定向;

    400-415:客户端错误;

    500-505:服务器端错误;

      200:成功;OK

      301:请求的URL指向的资源已经被删除,但响应报文中经过首部Location指明了资源如今所处的新位置,Moved Permanently;

      302:与301类似,但在响应报文中指明临时新位置;Found

      304:客户端发出条件式请求,但服务器上的资源不曾发生改变;Not Modified

      401:须要输入帐号密码认证;Unauthorized

      403:请求被禁止;Forbidden

      404:服务器没法找到客户端请求的资源;Not Found

      500:服务器内部错误;Internal Server Error

      502:代理服务器从后端服务器收到一条伪响应;Bad Getway

相关文章
相关标签/搜索