Windows+Apache 访问速度慢的解决办法
1、首先在hosts文件中添加:
C:\Windows\System32\drivers\etc
127.0.0.1 localhost
2.1、开启mpm:
/apache/conf/httpd.conf
找到以下这行内容,去掉注释。
Include conf/extra/httpd-mpm.conf (如果没有此段代码可以新加。没有此文件httpd-mpm.conf可以新建,也可以直接加代码到)
2.2、优化配置:
/apache/conf/extra/httpd-mpm.conf
找到<IfModule mpm_prefork_module>*</IfModule>代码,修改成以下参数即可。
<IfModule mpm_prefork_module>
ServerLimit 2000
StartServers 30
MinSpareServers 30
MaxSpareServers 40
MaxClients 1000
MaxRequestsPerChild 4000
</IfModule>
详细说明:
<IfModule mpm_prefork_module>
ServerLimit 2000
StartServers 30 #指定服务器启动时建立的子进程数量
MinSpareServers 30 #指定空闲子进程的最小数量
MaxSpareServers 40 #指定空闲子进程的最大数量
MaxClients 1000 #指定同一时间客户端最大接入请求的数量(单个进程并发线程数),任何超过该限制的请求都将进入等候队列,一旦一个连接被释放,队列中的请求将得到服务
MaxRequestsPerChild 4000 #指定每个子进程在其生存周期内允许伺服的最大请求数量,默认为10000,0表示子进程永远不结束
</IfModule>
3、开启GZIP功能:
/apache/conf/httpd.conf 文件
去掉 #LoadModule headers_module modules/mod_headers.so 前面的注释#
去掉 #LoadModule deflate_module modules/mod_deflate.so 前面的注释#
去掉 #LoadModule filter_module modules/mod_filter.so 前面的注释#
文件末尾加上
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript application/json #对指定的内容进行压缩,压缩方式为默认的一个方法
</IfModule>
详细配置:
<IfModule mod_deflate.c>
DeflateCompressionLevel 6
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript application/json
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩
SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary
AddOutputFilterByType DEFLATE text/* #设置对文件是文本的内容进行压缩,例如text/html text/css text/plain等
AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript #这段代码你只需要了解application/javascript application/x-javascript这段就可以了,这段的意思是对javascript文件进行压缩
AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #这段是告诉apache对php类型的文件进行压缩
BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一些问题,所以只压缩文件类型是text/html的
BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的问题,所以不开启压缩
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # IE浏览器会伪装成 Netscape ,但是事实上它没有问题
</IfModule>
4、编辑(如不存在文末添加)以下两段配置(去除前面的井号):
/apache/conf/httpd.conf 文件
AcceptFilter http none
AcceptFilter https none
总结:
1和3,这两项最为重要,如果这两项设置好还是慢,就把所有步骤设置一下。