分类: 系统运维
2009-02-02 17:57:01
本文简要介绍了几个优化 Apache 的技巧,在实战中十分有用。
[转自]
一:
1、升级 Apache 到最新版本,新版本往往包含性能提升和安全更新;
2、在 httpd.conf 中设置 "HostNameLookups off" 能避免针对每个访问者的DNS域名的反向查询;
3、对于繁忙的网站,在 httpd.conf 中设置 "MaxClients 230" 或者更高。
这项设置让更多的 httpd 进程同时响应请求,并避免了处理器排队的情况发生;
4、采用另外一台服务器处理图片文件;
5、确保您的 Web 页面和 CGI 页面采用了浏览器缓冲技术。
具体的文章可以参考本站[]:采用 mod_gzip 加速 Zope 和 Apache ;
6、保持您的 Apache 苗条,编译那些仅仅需要的模块,在编译之前,
修改src/Configuration文件,在那些不需要的模块之前用 # 号注释掉;
7、如果不需要流量日志,那么把 httpd.conf 中的 TransferLog 指向到/dev/null/ ;
8、除非你确定使用 .htaccess 文件来控制一些目录的权限,否则设置"AllowOverride None" ,
这样就免去 Apache 在每个目录搜索 .htaccess 文件的劳役之苦;
9、不要让不需要的后台进程运行;
10、千万不要把页面或者日志文件写到网络磁盘上,例如 NFS;
11、不要让 Apache (httpd) 运行于 inetd 模式;
12、不要让 X Windows 运行在你的 Web 服务器上,用 Ctrl-Alt-Backspace 关闭X ;
13、避免使用 SSI tag;
二:在 CGI 脚本中:
1、文件 I/O:打开的文件数目越少越好;
2、Shell 命令:采用全路径来调用 shell 命令;
3、如果你的网站主要以 CGI 来驱动,那么请使用 mod_perl;
4、在你的 Web 页面目录中,不要让文件数超过 1000 个,文件越多花费在定位上的时间也越多;
5、在 Web 服务器上的图片越少越好,保证每个图片都经由图片压缩器运行;
6、对你的网站做压力测试,建议采用 Apache 自带的 ab 命令来测试。
*为了最好的性能,最好把网线拔掉,这样你的 Web 服务器就十分安全,而且负载马上降为 0,:-)