Chinaunix首页 | 论坛 | 博客
  • 博客访问: 94341
  • 博文数量: 23
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 253
  • 用 户 组: 普通用户
  • 注册时间: 2015-03-01 20:41
文章分类

全部博文(23)

分类: 系统运维

2015-03-02 16:14:05

安装:

rpm简单安装配置

源码编译

 

HttpdSELinnux(事先处于permsssivedisable状态)

 

Httpd

执行进程:/usr/sbin/httpd(MPM:prefork)

httpd(主进程master process):rootroot

httpd(工作进程worker process):apacheapache

启动进程:/etc/rc.d/init.d/httpd

Port : 80/tcp     ssl : 443/tcp

工作根目录(进程运行目录,也就是安装目录)/etc/httpd

配置文件目录:/etc/httpd/conf

主配置文件httpd.conf

/etc/httpd/conf.d/*.conf 都是主配置文件的一部分。用include包括进去

/etc/httpd/modules:模块路径。都是连接文件

/etc/httpd/logs ------> /var/log/httpd:日志目录

日志文件:访问日志access_log,错误log : err_log

/var/www/ 下面两个目录

html   静态页面目录

cgi-bin 动态文件目录

cgiCommon Gateway Interface

Client  -->  httpd (index.cgi)  -->  Spwan Process (index.cgi) --> httpd --> client

Perl , python , java(servlet也就是jsp) php

 

 

欢迎页面:/etc/httpd/conf.d/welcome.conf

 

httpd的朱配置文件中有这么三段

第一部分是主环境配置,第二部分是主服务器配置,第三部分是虚拟主机配置。

第三部分和第二部分不能同时生效,默认用主服务器

 

Directive value  也就是 指令  参数

指令不区分大小写,参数区分

Httpd.apache.org 指令快速参考

Yum install  httpd-manual 安装使用说明(本地)

/etc/httpd/conf.d/manual.conf/  访问的时候 

 

 

 

 

http默认配置

1、全局配置:

  1. server tokens os 报错信息中的软件版本等
  2. server root      服务器工作目录(不要改)其他的内容都是相对于此文件夹
  3. pidfile           pid号码
  4. timeout 120      tcp三次握手失败
  5. keepalive         是否用长连接
  6. maxkeepaliverequests   长连接最大请求次数,0位无限制
  7. keepalivetimeout         长连接超时时间,5s稍微好点   loadrunner测试工具
  8. MPM(multi path module)多道处理模块,定义工作模型
    1. Prefork(一个请求用一个进程响应)稳定,性能差
    2. Worker(一个请求用一个线程响应,启动多个进程,每个进程启用多个线程)
    3. Event  (一个进程响应多个请求)最强大

 

     i)listen:80 没有ip地址就是监听所有ip地址的80

 

 

Httpd l 显示支持的模型或模块

没有worker模型,但是我想启用worker模型,这时候在启动脚本中修改

Vim /etc/sysconfig/httpd,把警号去掉就可以了,用event就改成event就行了

 

模型配置

  1. prefork模块

startservers   8个空闲进程

minspareserver   最少空闲进程

maxspareserver   最多空闲进程

serverlimit        maxclient最大值,需要kill进程在修改

maxclient         最多允许256个请求同时

maxrequestprechild  一个进程最多响应4000次请求达到了就kill

 

 

  1. worker模型

     threadsprechild   每个进程最多生成25个线程

    minmaxthreads是说有进程的总和不是单个进程的

 

 

 

  1. 主服务器段:

1serveradmin  root@localhost  报错的时候可能爆出,邮箱

2servername   如果没有就会解析自己的ip地址,如果解析不出来就给警告

3documentroot “/var/www/html”

4

 Options  indexes  followsymlinks    这个目录下的所有的文档访问属性

 None 不支持任何选项

 Indexes是没有主页的情况下,列出所有的文件和目录,要删除,除非做下载站

 Followsymlinks跟随符号连接,允许访问符号连接指向的真正文件(去掉)

Includes允许执行服务器段包含(SSI

ExecCGI 允许运行CGI脚本

Multiviews

All  支持所用选项

Allowoverride none,改AuthConfig可以进程用户认证

            AllowOverride AuthConfig             用户认证

                         AuthType Basic                        本地认证

                         AuthName "Restricted File"            认证名字(随便)

                         AuthUserFile "/etc/httpd/conf/htpasswd" 认证文件

                         Require valid-user                    允许认证文件中的所有用户

                                 #   Require user username                     允许认证文件中的某一个用户

htpasswd c m /etc/httpd/conf/htpasswd  xiaoming  第一次用-c

htpasswd  –m /etc/httpd/conf/htpasswd  tom       -m   md5加密

-D   删除用户

 

组认证:  

     AllowOverride AuthConfig

    AuthType Basic

    AuthName "Restricted File"

    AuthUserFile "/etc/httpd/conf/htpasswd"

    AuthGroupFile "/etc/httpd/conf/htgroup"

                Require group myusers

Vim /etc/httpd/conf/htgroup

添加  myusers: xiaoming  tom

查看错误日志:tail /var/log/http/error_log

 

 

Order:用于定义基于主机的访问控制功能,ip,网络地址或主机名定义访问控制机制

Order  allowdeny  allow,后deny

Allow from 192.168.1.0/24

Deny from

Httpd –t  测试语法是不是正确

Elinks文本浏览器

    -dump  显示网页后立即退出交互模式

-source 显示源码

 

 

Httpd –M 支持的额外的模块

是否允许在自己的家目录里面,创建个人的网站

1UserDir disabled注释掉

2UserDir public_html  这个是网站的根目录。网页放下下面

3、创建用户,家目录 o+x权限 现在就可以访问了

定义家目录网站的权限

Allowoverride 弄成none或者authconfig

 

Options  弄成none  下面的limit去掉就行了。

 

 

 

Accessfilename  .htaccess   每目录访问的权限,写到里面 ,定义那个目录的访问控制权限就在那个目录下面家里这个文件,自上而下继承的,效率很低,生产环境中不用这个东西

 

匹配以   .ht开头的文件都不允许访问

 

Typesconfig   /etc/mime.types  支持的mime理性

Defaulttype   text/plain        默认文本

 

Hostnamelookups  off         在日志里面是不记录访问这的主机名,而是ip地址

登陆日志格式:

 

Alias /icons/ "/var/www/icons/"   别名,路径不在根目录下面,就不能访问了。此时用别名来访问。例如访问192.168.1.1 根目录是/var/www/html,访问不了/var/www/icon目录,所以用别名,直接访问192.168.1.1/icons就能访问/var/www/icon目录的东西了。

 

 

 

 

 

 

 

 

apache日志:

1、/var/log/httpd/access_log

2、/var/log/httpd/error_log

系统信息日志:

/var/log/messages

阅读(947) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~