Chinaunix首页 | 论坛 | 博客
  • 博客访问: 127933
  • 博文数量: 36
  • 博客积分: 2092
  • 博客等级: 大尉
  • 技术积分: 390
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-04 17:33
文章分类
文章存档

2011年(18)

2010年(18)

我的朋友

分类: LINUX

2010-06-03 12:50:16

今天,早上终于把项目的SVN和啊帕奇罢平了,真不知道公司怎么去管理,接手过来公司系统管理工作的我无从入手,没有相关的文档资料交接到手.哎.
 
发现问题是一些SO
直接把相关so注释掉,只把下面两个加入httpd.conf
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
 
项目能正常访问.
收集的资料:
apache安装的一些参数:
 
安装:
apache2.2.9
配置   ./configure --prefix=/usr/local/apache2 --enable-http --enable-
modules=all --enable-rewrite --enable-so --enable-cgi --enable-cgid --
enable-deflate=shared --enable-cache --enable-file-cache
编译   make
安装   make install
 
注解:
./configure //配置源代码树
--prefix=/usr/local/apache2 //体系无关文件的顶级安装目录prefix ,也就apache
的安装目录。如果没有指定PREFIX,默认会装到/usr/local/apache2。
--enable-module=so //打开 so 模块,so 模块是用来提 dso 支持的 apache 核心模

--enable-deflate=shared //支持网页压缩
--enable-expires=shared //支持 http 控制
--enable-rewrite=shared //支持 url 重写
--enable-cache   //支持缓存
--enable-file-cache   //支持文件缓存
--enable-mem-cache   //支持记忆缓存
--enable-disk-cache   //支持磁盘缓存
--enable-static-support //支持静态连接(默认为动态连接)
--enable-static-htpasswd //使用静态连接编译 htpasswd - 管理用于基本认证的用
户文件
--enable-static-htdigest //使用静态连接编译 htdigest - 管理用于摘要认证的用
户文件
--enable-static-rotatelogs //使用静态连接编译 rotatelogs - 滚动 apache 日志
的管道日志程序
--enable-static-logresolve //使用静态连接编译 logresolve - 解析 apache 日志
中的ip地址为主机名
--enable-static-htdbm //使用静态连接编译 htdbm - 操作 dbm 密码数据库
--enable-static-ab //使用静态连接编译 ab - apache http 服务器性能测试工具
--enable-static-checkgid //使用静态连接编译 checkgid
--disable-cgid //禁止用一个外部 cgi 守护进程执行cgi脚本
--disable-cgi //禁止编译 cgi 版本的 php
--disable-userdir //禁止用户从自己的主目录中提供页面
--with-mpm=worker // 让apache以worker方式运行
--enable-authn-dbm=shared // 对动态数据库进行操作。rewrite时需要。
/usr/local/apache/bin/apachectl -m   =-t -d dump_modules 安装了哪些模块
/usr/local/apache/bin/apachectl -t    测试安装是否成功
/usr/local/apache/bin/apachectl -k start|restart|stop 查看具体
 
要想用所有的默认值配置源代码树只要简单的执行 ./configure 命令就可以了,同时
configure还可以接受命令行参数以改变默认值。
最重要的选项是Apache安装目录的前缀:--prefix ,因为Apache需要知道这个目录才
能正常运作。
可以通过在配置选项中指定要启用或禁用哪些模块来定制Apache的特性。Base组的模块
默认包含在Apache中。其他组的模块可以通过 --enable-module 指令启用。其中
module是模块名去掉"mod_"并将下划线转换成连字符后的字符串。你也可以使用 --
enable-module=shared 指令将模块编译为可在运行时加载和卸载的动态共享对象(DSO)
。同样的,你也可以使用 --disable-module 指令禁用Base组的模块。注意,使用这些
指令的时候configure不会对你拼写错误的模块发出警告说找不到某某模块,而只是简
单的忽略这个选项。
另外,有时候还必须提供给configure脚本关于编译器、库、头文件位置的更多信息。
这些可以通过环境变量或者命令行选项传递给configure脚本。
 
我对安装的理解总结:
1)Base组的模块默认包含在Apache之中,如要禁用Base组模块,可用--disable-
module指令。
2)其它非Base组模块可以通过--enable-module指令启用。
3)也可以使用—enable-module=shared将模块编译为可在运行时加裁和卸载的动态共
享对象(DSO)。
4)configure不进行拼写检查,而是忽略些选项。
5)有时还要为特殊的需求,提供给configure脚本关于编译器、库、头文件的更多信息
 
##########################################################
####  以下为8种不同configuer参数的安装实例以及说明  ####
##########################################################
1)仅指定目录的默认配置
./configure --prefix=/usr/local/apache2
Make
Make install
默认安装的module有:(共26个,这26个module就是BASE组模块)
[root@yy httpd-2.2.9]# /usr/local/apache/bin/httpd -l
Compiled in modules:
  core.c
  mod_authn_file.c
  mod_authn_default.c
  mod_authz_host.c
  mod_authz_groupfile.c
  mod_authz_user.c
  mod_authz_default.c
  mod_auth_basic.c
  mod_include.c
  mod_filter.c
  mod_log_config.c
  mod_env.c
  mod_setenvif.c
  prefork.c
  http_core.c
  mod_mime.c
  mod_status.c
  mod_autoindex.c
  mod_asis.c
  mod_cgi.c
  mod_negotiation.c
  mod_dir.c
  mod_actions.c
  mod_userdir.c
  mod_alias.c
  mod_so.c
[root@yy httpd-2.2.9]# ls /usr/local/apache2/modules
httpd.exp
[root@yy bin]# ./apachectl -V
Server version: Apache/2.2.9 (Unix)
Server built:   Sep 27 2008 01:01:51
Server's Module Magic Number: 20051115:15
Server loaded:  APR 1.3.0, APR-Util 1.3.0
Compiled using: APR 1.3.0, APR-Util 1.3.0
Architecture:   32-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT="/usr/local/apache2"
 -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
 -D DEFAULT_PIDLOG="logs/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="logs/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"
 
 
2)指定目录的默认配置,不安装以上默认的某个module(以不安装mod_status.c为例
),另外还要加安mod_expires、headers、deflate模块。
[root@yy httpd-2.2.9]# ./configure --prefix=/usr/local/apache2 --disable-
status --enable-expires --enable-headers --enable-deflate
(以下配置不可以执行:
[root@yy httpd-2.2.9]# ./configure --prefix=/usr/local/apache2 --disable-
modules=status --enable-modules=expires --enable-modules=headers --enable-
modules=deflate)
make
make install
[root@yy bin]# ./httpd -l
Compiled in modules:
  core.c
  mod_authn_file.c
  mod_authn_default.c
  mod_authz_host.c
  mod_authz_groupfile.c
  mod_authz_user.c
  mod_authz_default.c
  mod_auth_basic.c
  mod_include.c
  mod_filter.c
  mod_deflate.c
  mod_log_config.c
  mod_env.c
  mod_expires.c
  mod_headers.c
  mod_setenvif.c
  prefork.c
  http_core.c
  mod_mime.c
  mod_autoindex.c
  mod_asis.c
  mod_cgi.c
  mod_negotiation.c
  mod_dir.c
  mod_actions.c
  mod_userdir.c
  mod_alias.c
  mod_so.c
[root@yy httpd-2.2.9]# ls /usr/local/apache2/modules
httpd.exp
 
3)指定目录的默认配置,通过DSO安装expires、headers、deflate模块。
[root@yy httpd-2.2.9]# ./configure --prefix=/usr/local/apache2 --enable-
expires=shared --enable-headers=shared --enable-deflate=shared
[root@yy apache2]# ./bin/httpd -l
Compiled in modules:
  core.c
  mod_authn_file.c
  mod_authn_default.c
  mod_authz_host.c
  mod_authz_groupfile.c
  mod_authz_user.c
  mod_authz_default.c
  mod_auth_basic.c
  mod_include.c
  mod_filter.c
  mod_log_config.c
  mod_env.c
  mod_setenvif.c
  prefork.c
  http_core.c
  mod_mime.c
  mod_status.c
  mod_autoindex.c
  mod_asis.c
  mod_cgi.c
  mod_negotiation.c
  mod_dir.c
  mod_actions.c
  mod_userdir.c
  mod_alias.c
  mod_so.c
[root@yy apache2]# ls /usr/local/apache2/modules
httpd.exp
mod_deflate.so
mod_expires.so
mod_headers.so
[root@yy apache2]# grep "Load" /usr/local/apache2/conf/httpd.conf
# have to place corresponding `LoadModule' lines at this location so the
# LoadModule foo_module modules/mod_foo.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
 
4)指定目录的默认配置,并用—enable-modules=most安装模块。
[root@yy httpd-2.2.9]# ./configure --prefix=/usr/local/apache2 --enable-
modules="most"
[root@yy httpd-2.2.9]# make
[root@yy httpd-2.2.9]# make install
[root@yy bin]# ./httpd -l
Compiled in modules:
  core.c
  mod_authn_file.c
  mod_authn_dbm.c
  mod_authn_anon.c
  mod_authn_dbd.c
  mod_authn_default.c
  mod_authz_host.c
  mod_authz_groupfile.c
  mod_authz_user.c
  mod_authz_dbm.c
  mod_authz_owner.c
  mod_authz_default.c
  mod_auth_basic.c
  mod_auth_digest.c
  mod_dbd.c
  mod_dumpio.c
  mod_ext_filter.c
  mod_include.c
  mod_filter.c
  mod_substitute.c
  mod_deflate.c
  mod_log_config.c
  mod_logio.c
  mod_env.c
  mod_expires.c
  mod_headers.c
  mod_ident.c
  mod_setenvif.c
  prefork.c
  http_core.c
  mod_mime.c
  mod_dav.c
  mod_status.c
  mod_autoindex.c
  mod_asis.c
  mod_info.c
  mod_cgi.c
  mod_dav_fs.c
  mod_vhost_alias.c
  mod_negotiation.c
  mod_dir.c
  mod_imagemap.c
  mod_actions.c
  mod_speling.c
  mod_userdir.c
  mod_alias.c
  mod_rewrite.c
  mod_so.c
[root@yy apache2]# ls /usr/local/apache2/modules
httpd.exp
[root@yy conf]# grep "LoadModule" httpd.conf
# have to place corresponding `LoadModule' lines at this location so the
# LoadModule foo_module modules/mod_foo.so
 
5)指定目录的默认配置,并用--enable-modules=all安装模块。
  略:本方法应与4)相同,1)、2)、4)5)都为静态的方法安装。
 
6)指定目录的默认配置,并用--enable-mods-shared=most安装模块。

[root@yy httpd-2.2.9]# ./configure --prefix=/usr/local/apache2 --enable-
mods-shared=most
[root@yy httpd-2.2.9]# make
[root@yy httpd-2.2.9]# make install
[root@yy bin]# ll /usr/local/apache2/modules/
total 2292
-rw-r--r--  1 root root   8998 Sep 28 22:46 httpd.exp
-rwxr-xr-x  1 root root  24645 Sep 28 22:51 mod_actions.so
-rwxr-xr-x  1 root root  32884 Sep 28 22:51 mod_alias.so
-rwxr-xr-x  1 root root  22789 Sep 28 22:51 mod_asis.so
-rwxr-xr-x  1 root root  26076 Sep 28 22:51 mod_auth_basic.so
-rwxr-xr-x  1 root root  61070 Sep 28 22:51 mod_auth_digest.so
-rwxr-xr-x  1 root root  23170 Sep 28 22:50 mod_authn_anon.so
-rwxr-xr-x  1 root root  26478 Sep 28 22:50 mod_authn_dbd.so
-rwxr-xr-x  1 root root  24001 Sep 28 22:50 mod_authn_dbm.so
-rwxr-xr-x  1 root root  21213 Sep 28 22:50 mod_authn_default.so
-rwxr-xr-x  1 root root  23760 Sep 28 22:50 mod_authn_file.so
-rwxr-xr-x  1 root root  26441 Sep 28 22:51 mod_authz_dbm.so
-rwxr-xr-x  1 root root  21161 Sep 28 22:51 mod_authz_default.so
-rwxr-xr-x  1 root root  26916 Sep 28 22:50 mod_authz_groupfile.so
-rwxr-xr-x  1 root root  26206 Sep 28 22:50 mod_authz_host.so
-rwxr-xr-x  1 root root  23938 Sep 28 22:51 mod_authz_owner.so
-rwxr-xr-x  1 root root  22122 Sep 28 22:50 mod_authz_user.so
-rwxr-xr-x  1 root root  71215 Sep 28 22:51 mod_autoindex.so
-rwxr-xr-x  1 root root  57287 Sep 28 22:51 mod_cgi.so
-rwxr-xr-x  1 root root 144418 Sep 28 22:51 mod_dav_fs.so
-rwxr-xr-x  1 root root 273184 Sep 28 22:51 mod_dav.so
-rwxr-xr-x  1 root root  42317 Sep 28 22:51 mod_dbd.so
-rwxr-xr-x  1 root root  48280 Sep 28 22:51 mod_deflate.so
-rwxr-xr-x  1 root root  24606 Sep 28 22:51 mod_dir.so
-rwxr-xr-x  1 root root  26682 Sep 28 22:51 mod_dumpio.so
-rwxr-xr-x  1 root root  23639 Sep 28 22:51 mod_env.so
-rwxr-xr-x  1 root root  30009 Sep 28 22:51 mod_expires.so
-rwxr-xr-x  1 root root  46463 Sep 28 22:51 mod_ext_filter.so
-rwxr-xr-x  1 root root  38425 Sep 28 22:51 mod_filter.so
-rwxr-xr-x  1 root root  41942 Sep 28 22:51 mod_headers.so
-rwxr-xr-x  1 root root  27530 Sep 28 22:51 mod_ident.so
-rwxr-xr-x  1 root root  37834 Sep 28 22:51 mod_imagemap.so
-rwxr-xr-x  1 root root  93876 Sep 28 22:51 mod_include.so
-rwxr-xr-x  1 root root  41403 Sep 28 22:51 mod_info.so
-rwxr-xr-x  1 root root  60413 Sep 28 22:51 mod_log_config.so
-rwxr-xr-x  1 root root  25039 Sep 28 22:51 mod_logio.so
-rwxr-xr-x  1 root root  39079 Sep 28 22:51 mod_mime.so
-rwxr-xr-x  1 root root  78354 Sep 28 22:51 mod_negotiation.so
-rwxr-xr-x  1 root root 121464 Sep 28 22:51 mod_rewrite.so
-rwxr-xr-x  1 root root  31179 Sep 28 22:51 mod_setenvif.so
-rwxr-xr-x  1 root root  30849 Sep 28 22:51 mod_speling.so
-rwxr-xr-x  1 root root  44365 Sep 28 22:51 mod_status.so
-rwxr-xr-x  1 root root  31780 Sep 28 22:51 mod_substitute.so
-rwxr-xr-x  1 root root  25972 Sep 28 22:51 mod_userdir.so
-rwxr-xr-x  1 root root  29320 Sep 28 22:51 mod_vhost_alias.so
[root@yy bin]# ./httpd -l
Compiled in modules:
  core.c
  prefork.c
  http_core.c
  mod_so.c
[root@yy conf]# grep "LoadModule" httpd.conf
# have to place corresponding `LoadModule' lines at this location so the
# LoadModule foo_module modules/mod_foo.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbd_module modules/mod_authn_dbd.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule dbd_module modules/mod_dbd.so
LoadModule dumpio_module modules/mod_dumpio.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule include_module modules/mod_include.so
LoadModule filter_module modules/mod_filter.so
LoadModule substitute_module modules/mod_substitute.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule ident_module modules/mod_ident.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule asis_module modules/mod_asis.so
LoadModule info_module modules/mod_info.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule imagemap_module modules/mod_imagemap.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
 
7)指定目录的默认配置,并用--enable-mods-shared=all安装模块。
  略:本方法应与6)相同,为动态的方法安装。
 
8)指定目录的默认配置,以上所有配置方法安装后Server MPM都为Prefork,可以用-
-with-mpm定制运行方式。
[root@yy httpd-2.2.9]#  ./configure --prefix=/usr/local/apache2 --with-
mpm=worker
[root@yy httpd-2.2.9]# make
[root@yy httpd-2.2.9]# make install
[root@yy apache2]# cd bin/
[root@yy bin]# ./httpd -V
Server version: Apache/2.2.9 (Unix)
Server built:   Sep 28 2008 23:28:26
Server's Module Magic Number: 20051115:15
Server loaded:  APR 1.3.0, APR-Util 1.3.0
Compiled using: APR 1.3.0, APR-Util 1.3.0
Architecture:   32-bit
Server MPM:     Worker
  threaded:     yes (fixed thread count)
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/worker"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT="/usr/local/apache2"
 -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"
 
安装完apache的一定要做的一件事情,就是把默认连接数调到最大。
 
合理设置apache httpd的最大连接数
 
手头有一个网站在线人数增多,访问时很慢。初步认为是服务器资源不足了,但经反 复测试,一旦连接上,不断点击同一个页面上不同的链接,都能迅速打开,这种现象就是说明apache最大连接数已经满
了,新的访客只能排队等待有空闲的链 接,而如果一旦连接上,在keeyalive 的存活
时间内(KeepAliveTimeout,默认5秒)都不用重新打开连接,因此解决的方法就是加
大apache的最大连接数。
 
1.在哪里设置?
服务器的为FreeBSD 6.2 ,apache 2.24,使用默认配置(FreeBSD 默认不加载自定义
MPM配置),默认最大连接数是250
在/usr/local/etc/apache22/httpd.conf中加载MPM配置(去掉前面的注释):
# Server-pool management (MPM specific)
Include etc/apache22/extra/httpd-mpm.conf
可见的MPM配置在/usr/local/etc/apache22/extra/httpd-mpm.conf,但里面根据httpd
的工作模式分了很多块,哪一部才是当前httpd的工作模式呢?可通过执行 apachectl
-l 来查看:
Compiled in modules:
              core.c
              prefork.c
              http_core.c
              mod_so.c
看到prefork 字眼,因此可见当前httpd应该是工作在prefork模式,prefork模式的默
认配置是:

                StartServers                      5
                MinSpareServers                   5
                MaxSpareServers                  10
                MaxClients                      150
                MaxRequestsPerChild               0
 
2.要加到多少?
连接数理论上当然是支持越大越好,但要在服务器的能力范围内,这跟服务器的CPU、
内存、带宽等都有关系。
查看当前的连接数可以用:
ps aux | grep httpd | wc -l
或:
pgrep httpd|wc -l
ps -ef|grep httpd|wc -l (这个也可以吧,我经常这么写)

计算httpd占用内存的平均数:
ps aux|grep -v grep|awk '/httpd/{sum+=$6;n++};END{print sum/n}'
由于基本都是静态页面,CPU消耗很低,每进程占用内存也不算多,大约200K。
服务器内存有2G,除去常规启动的服务大约需要500M(保守估计),还剩1.5G可用,那
么理论上可以支持1.5*1024*1024*1024/200000 = 8053.06368
约8K个进程,支持2W人同时访问应该是没有问题的(能保证其中8K的人访问很快,其他
的可能需要等待1、2秒才能连上,而一旦连上就会很流畅)
控制最大连接数的MaxClients ,因此可以尝试配置为:

                StartServers                      5
                MinSpareServers                   5
                MaxSpareServers                  10
                ServerLimit                    5500
                MaxClients                     5000
                MaxRequestsPerChild               100
注意:
MaxClients默认最大为250,若要超过这个值就要显式设置ServerLimit,且
ServerLimit要放在MaxClients之前,值要不小于MaxClients,不然重启httpd时会有提
示。
重启httpd后,通过反复执行pgrep httpd|wc -l 来观察连接数,可以看到连接数在达
到MaxClients的设值后不再增加,但此时访问网站也很流畅,那就不用贪心再设置更高
的值了,不然以后如果网站访 问突增不小心就会耗光服务器内存,可根据以后访问压
力趋势及内存的占用变化再逐渐调整,直到找到一个最优的设置值。
(MaxRequestsPerChild不能设置为0,可能会因内存泄露导致服务器崩溃)
更佳最大值计算的公式:
apache_max_process_with_good_perfermance < (total_hardware_memory /
apache_memory_per_process ) * 2
apache_max_process = apache_max_process_with_good_perfermance * 1.5

参考:
apache的参数设置
Apache 2.0性能优化—MPM的选择与配置
如何避免apache的httpd进程占用比较多的内存
对apache中并发控制参数prefork理解和调优
 
附:
实时检测HTTPD连接数:
watch -n 1 -d "pgrep httpd|wc -l"
Apache 超时时间设置
/usr/local/apache/conf/extra/httpd-default.conf
2008-07-29 15:12#Timeout: Sec.
Timeout 360000
#KeepAlive: Off | On
KeepAlive On
#MaxKeepAliveRequests:
MaxKeepAliveRequests 0
#KeepAliveTimeout:
KeepAliveTimeout 15
 
 
学习LINUX知识....觉得自己还不够....给自己一句:好好学习.
 
 
阅读(4030) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-06-04 09:28:20

把配置加入一些参数.这样,其它SO都能正常. ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-cache --enable-disk-cache --enable-mem-cache