沈二铺子

关注互联网行业评论, 用户需求, 用户体验, LAMP, CSS+XHTML前端技术

RSS订阅

  • 首页
  • 创业
  • 微型博客
  • 技术
    • 互联网评论
    • 服务器端
    • 浏览器端
    • 硬件
  • 摄影
    • 作品
    • 器材
    • 评论
  • 旅行
  • 未分类
  • 转载
  • 随笔

用nginx的XSendfile特性,加速wordpress MU的附件访问速度

十 18th

由shen2发表在服务器端

2个评论

昨天发布了多人博客站点——博出位(bochuwei.com)。其中每个博客的附件地址,都是类似于这样的:http://shen2.cn/files/2010/10/xxx.jpg。

这样的附件地址,好处在于隐藏了实际路径中,wp-content/blogs.dir/?/的路径信息,缺点是原本直接通过nginx就能够返回文件,现在必须通过php。

更要命的是,php的readfile()函数效率不高,对于大文件来说,在返回结果之前,由php读取文件的全部内容,显然是没有必要的。

在ms-files.php的代码中,我找到了这样一段代码:

if ( WPMU_ACCEL_REDIRECT ) {
header( 'X-Accel-Redirect: ' . str_replace( WP_CONTENT_DIR, '', $file ) );
exit;
} elseif ( WPMU_SENDFILE ) {
header( 'X-Sendfile: ' . $file );
exit;
}

于是引发了我无限遐想。这个传说中X-Accel-Redirect是不是能够实现高速的文件重定向呢?

google了之后发现果然如此,可惜找不到任何的相关文档,仅有的一篇中文博客(http://tremblefrog.org/blog/2009/04/03/a_wpmu_hack_to_substitute_php_for_nginx_processing_static_files/),写得也不是很详细。

摸索了一下,原来是nginx提供了一个高级特性,叫XSendfile,用来读取header信息中的X-Accel-Redirect值,将X-Accel-Redirect所指定的文件内容,作为输出。
这样一来,php就不需要读取文件的正文,只需要输出X-Accel-Redirect值,就可以让nginx负责静态文件的传输了。

1. 在nginx的server配置中增加设置:

rewrite ^/files/(.+) /wp-includes/ms-files.php?file=$1;
location /blogs.dir/ {
internal;
root /wordpress/wp-content;
expires 30d;
}

2.在wp-config.php文件的尾部,增加:

define( 'WPMU_ACCEL_REDIRECT', true);

重启nginx之后,就生效了,是不是很酷?

blogs.dir, nginx, wordpress, WPMU_ACCEL_REDIRECT, X-Accel-Redirect, XSendfile, 加速, 静态文件

博出位(bochuwei.com)上线啦!

十 17th

由shen2发表在创业

没有评论

博出位(bochuwei.com)是2010年9月,live space宣布即将关闭之后,我(沈振宇)为了帮助我的朋友们托管自己的博客而建立的基于wordpress多人博客网站。

博出位由我自己维护,仅提供给我的朋友们免费使用,不向公众开放。在我可预见的将来都将稳定运行下去,即使有一天我不能再维护这个网站,我也会将数据交回。

博出位的优势:

  1. 基于最流行的wordpress程序,拥有超强的功能
  2. 支持绑定顶级域名,也可以使用yourname.bochuwei.com的二级域名
  3. 精选了十多款最受欢迎的wordpress主题和插件,满足各种各样的自定制需求
  4. 完全独立于大网站,所有数据都在自己的手中,不再受到大公司兴衰的影响。
  5. 独立服务器,而不是虚拟主机,不必担心被同服务器的其他人牵连。托管在北京电信通BGP多线机房,全国各地,不论是电信、网通、教育网还是国外,都能够高速访问。

如何开通博客?

给我发邮件(zhenyupku AT gmail.com),说明你的博客想使用的域名和你的用户名,我会给你回复邮件开通博客。当然,前提是你认识我,并且我认识你。

如何搬家到博出位?

  1. 对于即将关闭的live space,建议先按照官方提供的流程搬家到wordpress.com
  2. 然后在wordpress.com的管理后台,点击“工具->导出”,将你的博客导出成WXR文件
  3. 登录博出位的管理后台,点击“工具->导入”,上传WXR文件导入

博出位的资金来源、商业模式、发展计划、和图虫是什么关系?

博出位的维护费用由我自己支付。博出位是纯粹的个人网站,没有商业模式,也不打算挣钱。博出位和图虫没有关系。

注意事项:

  • 请勿书写政治敏感信息
  • 如果使用顶级域名,请尽快备案

已经开通的样例:

  • shen2.cn(我自己的)
  • amilymoor.com
  • www.louyue.net
  • techotaku.org
  • blog.pkuyinfan.com
live space, msn space, wordpress, 博出位, 搬家, 独立博客, 顶级域名

上周twitter更新汇总 2010-09-28

九 28th

由shen2发表在微型博客

没有评论

  • 已经回到北京 #
  • 我做了一个叫curlproxy的php开源项目,把项目放在了 http://curlproxy.googlecode.com/ #
  • msn live space 居然要关了,我想开个wordpress多人博客站。 #

Powered by Twitter Tools

twitter

上周twitter更新汇总 2010-09-14

九 14th

由shen2发表在微型博客

1个评论

  • 终于跟新浪微博的人联系上了,用新浪微博账号登录图虫指日可待。 #
  • 试用了一下腾讯微博,用户体验确实做得比新浪微博好很多。 #

Powered by Twitter Tools

twitter

比ab更好用的压力测试工具:siege

九 5th

由shen2发表在服务器端

没有评论

看php的ppt()的时候无意中发现的命令,可以通过ubuntu安装

http://talks.php.net/show/digg/

同时发现的工具还有strace,改天试用一下

php, siege, strace

shen2.cn域名终于恢复正常解析

九 4th

由shen2发表在微型博客

没有评论

域名由于更换注册商,博客暂停了两个半月。

虽然两个月之间我仍然通过修改/etc/hosts的方法来写博客,但毕竟很不勤快。

如今终于恢复正常。沈二铺子重新开张。相关twitter也一并重新启用,敬请关注。

域名, 开张

万恶的CNNIC,我的域名明明备案了,居然还不能解析

九 3rd

由shen2发表在互联网评论

没有评论

shen2.cn两个星期前,我就注回来了,可是似乎正好遇上CNNIC网络调整,明明我已经被过案了,但还是挂着一个serverHold。

严重鄙视CNNIC。域名备案、不备案不解析的制度,统统玩儿蛋去吧。

CNNIC, serverHold, 备案

解决显卡驱动的ignoreABI问题

九 3rd

由shen2发表在服务器端

没有评论

前两天我手贱,升级了一下ubuntu的软件包,结果显卡驱动出问题,挂掉了。可怜我NB的GTX260+,愣是不能用,进不了桌面。

提示信息是ABI驱动云云,估计是新的驱动不是在某某开源协议框架下的,不能随便用。必须加ignoreABI参数。可是提示信息愣是没说在哪里加ignoreABI参数。

研究了半天,发现用startx — -ignoreABI可以强行启动。

可是不能让我每次启动的时候都手敲这个命令啊。总有配置文件可以设置吧。

可算是被我找到了,在/etc/X11/xorg.conf文件中,加上下面这一段即可:

Section "ServerFlags"
Option "IgnoreABI" "1"
EndSection

ignoreABI, nvidia, ubuntu, xorg

上周twitter更新汇总 2010-08-30

八 24th

由shen2发表在微型博客

没有评论

  • 我架设的twitter代理光荣地第二次被封,现在启用第三个代理地址:http://m38.cn/,请互相转告 #

Powered by Twitter Tools

twitter

图虫和OpenJudge开始支持Pingback

八 20th

由shen2发表在服务器端

没有评论

所有的网页都可以接受pingback,但只有资源性页面会显示pingback。

测试一下
http://blog.stockwei.com/2010/04/07/349

pingback
12345»102030...最后一页 »
  •  

    2012 一月
    一 二 三 四 五 六 日
    « 十    
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031  
  • 友情链接

    • Tony
    • 云卷云舒
    • 千鸟
    • 吴舒
    • 技术宅拯救世界
    • 殷帆
    • 花生米
  • 图虫网

    • 图虫团队博客
    • 图虫的twitter
    • 图虫的新浪微博
    • 图虫的豆瓣主办方
    • 图虫的饭否
    • 图虫网
  • 我在别处

    • 我的twitter
    • 我的人人(校内)
    • 我的图虫
    • 我的新浪微博
    • 我的豆瓣
    • 沈二铺子@歪酷
  • 我的开发项目

    • gethosts
  • 我维护的站点

    • 1416教室
    • 48fans
    • blogpku.com
    • EXIF.cn
    • iHostel
    • NOI官方网站
    • twitter中文版
    • 北大青年摄影学会
    • 好人伟哥论坛
    • 彤
    • 快乐影友
    • 楼悦
Powered by 博出位
RSS订阅 XHTML 1.1 顶端