03 编译安装apache的简易配置
1.监听端口,默认为80,在主配置文件 /etc/httpd24/httpd.conf中可以更改

2.持久连接
Include /etc/httpd24/extra/httpd-default.conf
主配置文件中取消该注释,并且到该文件中作相应具体修改
KeepAlive On #开启持久连接 MaxKeepAliveRequests 100 #持久连接断开判断条件一,处理100个请求 KeepAliveTimeout 5 #条件二,超时5秒
副作用,对并发访问量大的服务器,持久连接会使某些请求得不到相应,可以考虑使用时间较短的持久连接,apache2.4支持毫秒级的持久连接(有个疑问,怎么设置 可以设置成0.2 吗?)
3.MPM
可能用到的命令, (编译安装我切换工作模式,httpd -l 貌似显示不出来我静态编译的工作模式,rpm安装包可以显示),httpd -M 可以查看当前加载模式
在主配置文件中可以选择工作模式,这里我有个疑问,event模式去哪里了??有知道的大大麻烦指点下

同时需要注释
# Server-pool management (MPM specific) Include /etc/httpd24/extra/httpd-mpm.conf
prefork的配置: <IfModule prefork.c> StartServers 5 服务器启动时建立的子进程数量 MinSpareServers 5 空闲子进程的最小数量 MaxSpareServers 10 空闲子进程的最大数量 ServerLimit 4000 服务器允许配置的进程数上限 MaxClients 4000 最大请求数量,超过后进入等待队列,与以上保持一致,通称为内存M/2 MaxRequestsPerChild 4000 设置每个子进程在其生存期内最大请求数量,0为无限 </IfModule> worker的配置: <IfModule worker.c> StartServers 5 启动时建立的子进程数量
ServerLiMIT 20 服务器允许配置的进程数上限
ThreadLimit 200 设置每个子进程可配置的线程数上限 MaxClients 4000 请求最大线程数,超过进入等待队列 MinSpareThreads 25 最小空闲线程数 MaxSpareThreads 75 最大空闲线程数 ThreadsPerChild 200 每个子进程的线程数 MaxRequestsPerChild 0 设置每个子进程在其生存周期内最大的请求数量,0为无限 </IfModule>
4.配置指令实现动态模块加载
LoadModule <mod_name> <mod_path>
5.文档页面路径
DocumentRoot "/var/www/html
同时注释
# Virtual hosts #Include /etc/httpd24/extra/httpd-vhosts.conf
给文档路径以访问权限
DocumentRoot "/var/html"
<Directory "/var/html">
Options None
AllowOverride None
Require all granted
</Directory>
ServerName 暂改为 www.test.com
在所在路径下建一个简单的html
echo "Hello World" > /var/html/index.com
添加hosts后可以访问了

6. 日志设定

日志定义设定
CustomLog logs/access_log combined
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
%h:客户端IP地址;
%l: Remote logname (from identd, if supplied). -表示为空;
%u: Remote user, (from auth; may be bogus if return status (%s) is 401);
%t:Time the request was received (standard english format),服务器收到请求的时间;
%r:First line of request,请求报文的道行信息(method url version);
%>s: 响应状态码;
%b: 响应报文的大小,单位是字节,不包括响应报文首部;
%{Referer}i:请求报文当中"referer"首部的值;当前资源的访问入口,即从哪个页面中的超链接跳转而来;
%{User-Agent}i:请求报文当中"User-Agent"首部的值;即发出请求用到的应用程序;
对应的日志图片

7.虚拟主机配置
注释DocumentRoot ,启用vhost
# Virtual hosts Include /etc/httpd24/extra/httpd-vhosts.conf
或者新加入自己设定的配置文件
# Virtual hosts #Include /etc/httpd24/extra/httpd-vhosts.conf Include /etc/httpd24/vhosts
<1>基于IP
<2>基于端口
<3>基于域名
简单的基于域名的虚拟主机因该配置如下
<VirtualHost 172.16.0.87:80>
ServerName www.test01.com
DocumentRoot "/data/vhost/one"
ErrorLog /usr/local/apache24/logs/www.test01.com/Error_Log
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "/usr/local/apache24/logs/www.test01.com/access_log" common
</IfModule>
<Directory "/data/vhost/one/">
Options None
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
echo "Hello World ! test01" > /data/vhost/one
echo "Hello World ! test02" > /data/vhost/two
记得添加日志所需的目录
测试如下



03 编译安装apache的简易配置的更多相关文章
- Linux 通过编译安装apache服务以及配置
Linux 编译安装apache服务 一.安装 1.通过编译安装,首先需要下载源代码安装包 apache下载链接:http://httpd.apache.org/download.cgi 2.解开源代 ...
- Hadoop集群搭建-03编译安装hadoop
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- centos手动编译安装apache、php、mysql
64位centos 5.5手动安装lamp,要求curl.json.pdo_mysql.gd,记录如下. centos 5.4.5.5.5.6的内核都是2.6.18,都可以安装php 5.3. 卸载旧 ...
- Linux下编译安装Apache Http Server
Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...
- linux中编译安装Apache、PHP、MySQL(上)
1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...
- 编译安装Apache httpd和php搭建KodExplorer网盘
编译安装Apache httpd和php搭建KodExplorer网盘 环境说明: 系统版本 CentOS 6.9 x86_64 软件版本 httpd-2.2.31 php- ...
- Linux编译安装Apache+PHP
Linux编译安装Apache+PHP 来自:自学it网,http://www.zixue.it/. 1]编译安装Apache+PHP 1.安装程序依赖库和开发环境 为了省事把所需要的库文件全都安 ...
- CentOS 下编译安装Apache
CentOS 下编译安装Apache 卸载原有的apache 首先从 http://httpd.apache.or 下载apache源码包httpd-2.4.4.tar.gz然后从 http://ap ...
- linux编译安装Apache
1 前言 编译安装Apache HTTP Server,目前最新的版本为2.4.41,做好apr,apr-util,pcre的安装后编译安装即可. 2 准备工作 三个:apr,apr-util,pcr ...
随机推荐
- 程序设计 之 C#实现《拼图游戏》
功能描述: 1.用户自定义上传图片 2.游戏难度选择:简单(3*3).一般(5*5).困难(9*9)三个级别 3.纪录完成步数 模块: 1.拼图类 2.配置类 3.游戏菜单窗口 4.游戏运行窗口 -- ...
- 【局域网聊天客户端篇】基于socket与Qt
前言 暑假把linux下的高级编程和网络编程学习了一遍,学习很重要,但是也得有个练手的地方,所以必须做做项目来认识下自己所学习的知识. 能够找到小伙伴一起做项目也是一件很快乐的事情的,很幸运的有两个小 ...
- 学习MVC之租房网站(六)-用户登录和权限控制
在上一篇<学习MVC之租房网站(五)-权限.角色.用户管理>完成了权限.角色.用户的增删改查,现在将基于前面完成的内容,进行后台用户登录和权限控制功能的开发. 一.用户登录 用户登录涉及到 ...
- Java中this关键字的作用
转载: 原文地址:http://www.cnblogs.com/lzq198754/p/5767024.html 一.this关键字主要有三个应用: (1)this调用本类中的属性,也就是类中的成员变 ...
- virtualbox中实施ASM扩容实施记录
实施ASM在线扩容 1. 首先关闭集群 [root@node1 bin]# ./crsctl stop crs [root@node2 bin]# ./crsctl stop crs 关机,halt ...
- java.util.NoSuchElementException: None.get的解决方法
在Java中用null表示无值返回.在Java 里,null 是一个关键字,不是一个对象,所以对它调用任何方法都是非法的 笔者就常在类型转换时见到空指针错误,便是由null的特殊性导致的 而在scal ...
- Linux 01 Liunx目录结构及文件基本操作
Linux目录结构及文件基本操作 1.Linux的文件组织目录结构(遵循FHS标准) FHS(Filesystem Hierarchy Standard)标准:多数Linux版本采用这种文件组织形式, ...
- python3 time模块与datetime模块
time模块 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平 ...
- scala 异常处理机制
有经验的码农都知道,程序开发的差不多的时候,为了提高程序的稳健性,是一定要加上异常处理机制的 在scala中,用try/catch/finally实现该功能,这个在我的博客,数字转汉字小工具中有体现, ...
- [转载]PHP文件解压代码
来自开源中国: