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 ...
随机推荐
- 迭代的是人,递归的是神。——L. Peter Deutsch
递归,数学里面叫recursion,其实就是递推关系. 中学数学有一部分其实就是递归的非常典型的做法,不过老师们都没怎么扩展,新课标必修五第二章数列应该算是我们第一次接触递推的概念了. 其实说到递归 ...
- 用C#写经理评分系统
先写需求: 01.显示员工信息 02.实现项目经理给员工评分的功能 第一步: 建立两个类,员工类和项目经理类 定义属性和方法 员工类:工号.年龄.姓名.人气值.项 ...
- mac上使用使用rz,sz命令
mac上使用rz,sz命令,mac上的终端不支持rz 和sz,所以安装iterm并配置使用rz和cz 1.首先需要下载安装iterm2,下载地址:下载后安装 http://www.iterm2.cn/ ...
- HTML解析器BeautifulSoup
BeautifulSoup是Python的一个库,可解析用urllib2抓取下来的HTML 1.Beautiful Soup 安装 可以利用 pip 来安装,在Python程序中导入 pip inst ...
- 【HDOJ 2150】线段交叉问题
Pipe Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submissi ...
- React-Native 之 redux 与 react-redux
前言 本文 有配套视频,可以酌情观看. 文中内容因各人理解不同,可能会有所偏差,欢迎朋友们联系我讨论. 文中所有内容仅供学习交流之用,不可用于商业用途,如因此引起的相关法律法规责任,与我无关,如文中内 ...
- 关于Integer与int
integer a=new integer(1); integer b=new integer(1); int c=1; integer d=1; a==b false因为地址不同: a==c t ...
- EverythingAboutJava
1 GC gabage collection 垃圾回收Java GC系列(1):Java垃圾回收简介 http://mp.weixin.qq.com/s?src=3×tamp=149 ...
- java.net.SocketException: Broken pipe 异常可能的原因
org.apache.catalina.connector.ClientAbortException: java.net.SocketException: Broken pipe at org.apa ...
- 【转】为什么delete以后指针还能被赋值
首先,系统知道哪一部分堆的线性空间被占掉了,new就是起这个作用,仅仅是声明一下(可能多了一个功能),因为堆的空间不一定是直接从系统调用获得的,堆的空间是这样管理的:程序先伸请一个大的堆空间,这个时候 ...