Apache的基本配置

1.监听套接字[ip : port]

2.实现持久连接(keep alive)

3.MPM模块

命令行中执行

core.c        :  核心模块
prefork.c    :  prefrok模块
http_core.c:  http核心模块
mod_so.c   :  支持动态DSO机制模块

注:

httpd –l :显示支持的非DSO模块

httpd -m:显示已装载的DSO模块

prefork模型的参数

<IfModule prefork.c>
        StartServers                8         在启动httpd的默认启动的子进程数
        MinSpareServers         5         httpd主进程维持最少空闲子进程数
        MaxSpareServers        20       httpd主机厂维持的最大空闲子进程数
        ServerLimit                  256      同一(并发)时间允许的最大活动进程数
        MaxClients                   256      并发请求的最大值
        MaxRequestsPerChild  4000   在每个子进程的生命周期内所能够接收的请求数
    </IfModule>

worker模型的参数

<IfModule worker.c>
        StartServers                4        在启动httpd的时候,所启动的子进程数
        MaxClients                   300    能接收的最大并发请求数
        MinSpareThreads        25      每个子进程所维护最小线程数
        MaxSpareThreads       75      每个子进程所维护最大线程数
        ThreadsPerChild         25      每个子进程所能产生的线程数
        MaxRequestsPerChild 100    每个线程在生命周期内所能够处理的请求数量,0表示不做限制
    </IfModule>

4.DSO动态装载模块

方式:LoadModule  ModuleName  /path/to/Module(是相对路径,相对ServerRoot)

例子:装载PHP模块

LoadModule  php5_module  /etc/httpd/modules/php5_module.so(在配置文件修改/etc/httpd/conf/httpd.conf)

5.网站根目录

DocumentRoot /path/to/somewhere

默认位置:/var/www/html

注:如果修改网站根目录,必须保证Apache对此目录有读权限

6.网页访问属性

设置用户访问指定目录中的文件的时候的属性

<Directory "/path/to/somewhere">
    Option               访问控制类选项
    AllowOverride    设置apache的配置文件是否可以被另个覆盖
    Order
    allow
</Directory>

常用AllowOverride:none不允许,all允许,authconfig表示使用基于用户的方式来做认证

7.默认文档

DirectoryIndex

8.用户目录

让每个用户可以在自己家目录下创建个人网站

<IfModule mod_userdir.c>
    UserDir disabled      禁止个人用户创建自己的站点
    #UserDir public_html  指定目录名
</IfModule>

9.日志功能

日志存放位置:/var/log/httpd

定义访问日志

CustomLog "/path/to/logFile" FormatName
logFormat FormatString FormatName
%h: 记录客户端地址
%l:远程登录名,通常 -
%u:用身份认证的时候显示用户名,-
%t:收到客户端请求的时间
%r:请求报文的起始行
%(user-agent)
%(refer)

例子:

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common

10.路径别名

Alias /alias/ /path/to/somewhere

11.设置默认字符集

AddDefaultChareset

12.CGI脚本别名

CGI:Common Gateway Interface

CGI:执行脚本,将执行脚本结果返回给用户

脚本程序:
遵循cgi
Content-Type:text/html
脚本具有执行权限(SUID,SGID)
将脚本保存在特定目录中
mod_alias
mod_cgi
定义脚本别名
ScriptAlias  /cgi-bin/ "/var/www/cgi-bin/"

Author:潇湘雨错

Apache(二)的更多相关文章

  1. The server of Apache (二)——apache服务客户端验证

    一.确定网站名称.IP地址 地址为: 192.168.1.1   域名为: www.benet.com 二.配置可用的DNS域名服务或者修改本地hosts记录 ~] # vim /etc/hosts ...

  2. CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境

    安装篇: 一.安装Apache yum install httpd #根据提示,输入Y安装即可成功安装 /etc/init.d/httpd start#启动Apache 备注:Apache启动之后会提 ...

  3. CentOS 6.6安装配置LAMP服务器(Apache+PHP5+MySQL)

    准备篇: CentOS 6.6系统安装配置图解教程 http://www.osyunwei.com/archives/8398.html 1.配置防火墙,开启80端口.3306端口 vi /etc/s ...

  4. 在Mac下配置php开发环境:Apache+php+MySql

    /private/etc/apache2/httpd.conf 一.启动Apache sudo apachectl start sudo apachectl -v   可以查看到Apache的版本信息 ...

  5. CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)

    这篇文章主要介绍了CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)的方法,需要的朋友可以参考下 文章写的不错,很详细:IDO转载自网络: 准备篇: 1.配置防火墙,开启 ...

  6. CentOS 6.4下通过YUM快速安装配置LAMP服务器(Apache+PHP5+MySQL)

    准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dp ...

  7. CentOS 6.3 安装以及配置Apache php mysql

    准备篇: 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables -A INPUT -m state –state NEW -m tcp -p tcp –dp ...

  8. linux下安装Apache(https) 服务器证书安装配置指南

    一.  安装准备 1.    安装Openssl 要使Apache支持SSL,需要首先安装Openssl支持.推荐下载安装openssl-0.9.8k.tar.gz   下载Openssl:http: ...

  9. 阿里云服务器CentOS 5.7(64位)安装配置LAMP服务器(Apache+PHP5+MySQL)

    一.快速安装Apache+PHP5+MySql ----------------------------------------------------- 补充:由于163的yum源上只有php5.1 ...

  10. CentOS 6.3安装配置LAMP服务器(Apache+PHP5+MySQL)

    准备篇: 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp -- ...

随机推荐

  1. 教你50招提升ASP.NET性能(二):移除不用的视图引擎

    (2)Remove unused View Engines 招数2: 移除不用的视图引擎 If you're an ASP.NET MVC developer, you might not know ...

  2. Java获取时间与系统时间相差8小时终极解决方案

    一.在取日期以前设置一下时区 TimeZone tz = TimeZone.getTimeZone(“ETC/GMT-8″);TimeZone.setDefault(tz); 此种方法适用于单次快速获 ...

  3. iOS开发笔记系列-基础1(数据类型与表达式)

    学习iOS开发快两年了,去年完成MagViewer之后就因为公司的其他业务繁重,除了维护这个应用之外,只是断断续续地自己做一些实验开发,没有再发布新的应用,这里想整理一下学习过程中的笔记,以便加深印象 ...

  4. 关于Excel Networkdays方法的实现

    最近一个程序要求excel输出的日期差为Networkdays. 在网上找了下,没有找到很好的具体实现方法. 要说明的是,微软的Microsoft.Office.Interop.Excel已经实现的N ...

  5. Android 换肤功能的实现(Apk插件方式)

    一.概述 由于Android 没有提供一套统一的换肤机制,我猜可能是因为国外更注重功能和体验的原因 所以国内如果要做一个漂亮的换肤方案,需要自己去实现. 目前换肤的方法大概有三种方案: (1)把皮肤资 ...

  6. PHP免费API调用,使用(CURL)

    <?phpclass GetApiModel{//获取第三方API //获取身份证信息 //返回json /*{ "errNum": 0, "retMsg" ...

  7. [转]Oracle学习笔记——权限管理

    本文转自:http://www.cnblogs.com/whgw/archive/2011/10/30.html 一.系统的默认用户 1)sys用户是超级用户,具有最高权限,具有sysdba角色,有c ...

  8. 关于增强for循环

    1 增强for循环增强for循环是for的一种新用法!用来循环遍历数组和集合. 1.1 增强for的语法for(元素类型 e : 数组或集合对象) {}例如:int[] arr = {1,2,3};f ...

  9. 【C语言】函数和自定义函数

    函数,我之前也提到过一点点内容.其实函数是很好理解的,但是写起来又十分麻烦. 一.     函数引入 我们知道,C源程序是由函数组成的.请看下面的简单函数例子 #include <stdio.h ...

  10. Office365 InfoPath 表单的设计和应用(原创)

    表单的应用:我想到的有2种. 1 做为自定义表单库的模版. 通过发放url(模版链接)给用户来填写表单. 最后将在表单库中得到所有填写的信息列表. 如 2 上传表单做为ContentType 也就是自 ...