[摘要]Nginx 对 sendfile 有着精采的支持,Discuz! X2 也支持把附件通过 sendfile 发给客户,对付资源下载类的论坛,能明明淘汰PHP读取附件的资源占用,本文就讲一下如何让Discuz! X2利用 Nginx 的 sendfile 成果。
传统的Web处事器在处理惩罚文件下载的时候,老是先读入文件内容到应用措施内存,然后再把内存傍边的内容发送给客户端欣赏器。这种方法在应付当今大负载网站会耗损更多的处事器资源。sendfile是现代操纵系统支持的一种高机能网络IO方法,操纵系统内核的sendfile挪用可以将文件内容直接推送到网卡的buffer傍边,从而制止了Web处事器读写文件的开销,实现了“零拷贝”模式。
Nginx 对 sendfile 有着精采的支持,Discuz! X2 也支持把附件通过 sendfile 发给客户,对付资源下载类的论坛,能明明淘汰PHP读取附件的资源占用。
1、先在Nginx的设置文件内里查抄是否有 sendfile off 设置,假如有,那么把sendfile 改为on。
2、打开论坛的设置文件config/config_global.php ,
找到以下代码:
$_config['download']['xsendfile']['type'] =0把以上代码中的0改为1。
然后找到下面这句代码:
$_config['download']['xsendfile']['dir'] = '/down/';按照论坛地址目次举办相应修改:
假如论坛放在根目次,那么把/down/改为/data/attachment/forum/
假如论坛放在bbs目次,那么把/down/改为/bbs/data/attachment/forum/
以此类推。
注:本教程基于用户手册的Nginx设置部门编写,实际测试有效。地点
Discuz 下载:
Discuz! X2 R20120628 简体GBK下载
界面预览本文转自:
分享到