Apache 跟 PHP的效能调校

ㄚ琪今天试着调校Apache跟PHP,两个要绑在一起说明,主要就是因为PHP只能在Apache的apache2-mpm-prefork模式下使用,所以这样子也会连带有影响到Apache的效能调校,今天主要参考的文章来自PHP Everywhere.Tuning Apache and PHP for Speed on Unix,不知会不会有版本上的差异,不过我们还是先行来试试,这样子各位在工作达人上的浏览可能会更好,当然如果有钱砸在频宽上那就更赞了,不过这还只是个梦而已。

1.设定php.ini

output_handler = ob_gzhandler

ㄚ琪另外参考目前档案上的备注:

; You can redirect all of the output of your scripts to a function. For
; example, if you set output_handler to “mb_output_handler”, character
; encoding will be transparently converted to the specified encoding.
; Setting any output handler automatically turns on output buffering.
; Note: People who wrote portable scripts should not depend on this ini
; directive. Instead, explicitly set the output handler using ob_start().
; Using this ini directive may cause problems unless you know what script
; is doing.
; Note: You cannot use both “mb_output_handler” with “ob_iconv_handler”
; and you cannot use both “ob_gzhandler” and “zlib.output_compression”.
; Note: output_handler must be empty if this is set ‘On’ !!!!
; Instead you must use zlib.output_handler.
; http://php.net/output-handler

这里有提到”ob_gzhandler” 跟 “zlib.output_compression”不可以同时使用,ㄚ琪查过目前zlib.output_compression=Off,所以应该没有关系。

作者提到这样地的设定,可以节省2~3秒左右。

2.在php.ini设定

session.save_handler=mm

ㄚ琪查自己的目前设定为session.save_handler = files

先备注起来,观察测试。

重新启动之后,工作达人的Google Page Speed突然从87分升到99分,杰克太神奇了吧,不过也怕是假象,先拍照存证纪念一下好了。

3.作者建议不要跑X-Windows,ㄚ琪也赞成,改天机子搬回桃园再来砍X-Windows。

4.以前有常用的hdparm,但是现行的SATA硬碟好像不适用,这一个ㄚ琪先保留,等求证后再上线测试。

其余的ㄚ琪就先不试了,因为里头很多的连结大都失效,不参考了,先维持这样。

2012/05/22注:output_handler = ob_gzhandler会造成WordPress浏览产生乱码,目前已拿掉,感谢Hannah的提醒,她目前在成大研究所念书。

修改回来后的分数: