- 1.控制MaxClients的设置,以避免服务器产生太多的子进程而发生交换。
进程间的数据交换会占用很大内存,数据交换产生的滞后使用户总感觉”不够快”,所以用户就可能去按”停止”和”刷新”,从而带来更大的负载。一般建议小网站将MaxClients设置为12~24。 - 2.选择更好的硬件,CPU、内存、硬盘等等
这句很鸡肋啦,如果有更多的银子,谁不愿意换更好的呢?^_^ - 3.定期更新操作系统,打上系统补丁;如果你的操作系统支持sendfile()系统调用,则务必安装带有此功能的版本或补丁
在支持sendfile的系统中,Apache2可以更快地发送静态内容而且占用较少的CPU时间。 - 4.HostnameLookups设置为off
尽量较少DNS查询的次数。如果你使用了任何”Allow from domain”或”Deny from domain”指令(也就是domain使用的是主机名而不是IP地址),则代价是要进行两次DNS查询(一次正向和一次反向,以确认没有作假)。所以, 为了得到最高的性能,应该避免使用这些指令(不用域名而用IP地址也是可以的)。 - 5.为Directory加上FollowSymLinks
如果网站空间中没有使用 Options FollowSymLinks ,Apache就必须执行额外的系统调用以验证符号连接。例如:在请求”/index.html”时,Apache将对”/www”、”/www /htdocs”、”/www/htdocs/index.html”执行lstat()调用。而且lstat()的执行结果不被缓存,因此对每一个请求 都要执行一次。 - 6.将AllowOverride设置为None
对于使用虚拟主机的朋友可能会觉得不方便,这样设置将会使.htaccess中的设置失效,如果实在需要,并且在有条件的情况下,请在conf配置文件中直接写入rewrite规则 - 7.禁用内容协商
尽管在实践中,内容协商的好处大于性能的损失,如果你很在意那一点点的性能损失,则可以禁止使用内容协商。但是仍然有个方法可以提高服务器的速度,就是不要使用通配符。 - 8.MaxRequestsPerChild设置为非0以防止内存泄漏 阅读全文 »
apache 优化配置几条建议
如何在PHP网站开发中,指定任意文件扩展名使用PHP解析
我们经常可以看到在网站开发中,看到一些陌生的文件后缀名出现在地址栏中,这是怎么可以实现呢(见图1)?或者如何让指定html文件扩展名(这个html文件里实际都是PHP代码,只是保存文件时保存成html文件扩展名,从而实现伪静态)使用PHP程序去解析里面。
其实实现这个,只需要更改下apche服务器的配置文件 httpd.conf 一处地方即可实现。打开httpd.conf配置文件,找到类似下列的语句,这些语句是你当时初次安装apache和PHP时自己写上去的,其位置一般在配置文件的最下面。
改完这个httpd.conf配置文件,注意AddType application/x-httpd-php后面有一个空格,再加上”.文件后缀名”.
重启你的apche服务器,写一个php代码,另存为文件名为’zhang’的文件(另存为什么后缀名是你在上面httpd.conf里面application/x-httd-php后指定的),放在apche的虚拟目录下,通过http的方式去访问下,即可看到你想的效果。’

