|
问题出处:建设局信息网。
环境:windows 2003(64),Server version: IBM_HTTP_Server/6.1.0.17 Apache/2.0.47
Server built:Mar 18 2008 07:01:22
出错现状:apache目录下的网站无法访问,访问首网页为空。
如果在Win下使用Apache,而你又必须要开防火墙之类的软件,那么如果你的Apache运行有问题,比如文件下载不完全或者损坏、未知错误信息、防火墙冲突等等,请参考如下:
打开你的 httpd.conf 配置文件,看是否如下修改可以解决问题:
EnableSendfile Off 控制内核传送文件是否支持(需要OS支持)。默认为on,如果使用NFS,则使用off
EnableMMAP Off
控制是否通过内存映射的方式传送文件(须得操作系统支持)
默认值为on; 如果你使用NSF加载的文件系统(通常在linux下),应置为off. 在某些系统上,置off,不管使用什么文件系统,能够提高效率,详细情况,请参阅文档
Win32DisableAcceptEx
该多路处理模块(MPM)是Windows NT上的默认值。它使用一个单独的父进程产生一个单独的子进程,在这个子进程中轮流产生多个线程来处理请求。
Win32DisableAcceptEx 指令
说明 使用accept()代替AcceptEx()接受网络链接
语法 Win32DisableAcceptEx
默认值 AcceptEx()是默认的,使用这个指令将禁用它。
作用域 server config
状态 MPM
模块 mpm_winnt
兼容性 仅在 Apache 2.0.49 及以后的版本中可用
<IfModule mpm_winnt.c>
ThreadLimit 2048
ThreadsPerChild 250
MaxRequestsPerChild 0
</IfModule>
综合来说,因为Windows NT下Apache只能启动父子两个进程,因此只能通过增大单个进程的线程数以及单个进程能够处理的最大请求数来进行优化。其他优化的参数同Linux系统下是一样的,大家可以加以参考。下面针对上述两个参数给出一个建议的设置:
ThreadsPerChild 250
MaxRequestsPerChild 5000 |
|
|