最简单的方法是使用“源拉动”CDN。这些类型的传送网络直接从您的站点拉取媒体,缓存它(通常用于缓存相关HTTP头定义的TTL)。
任何源拉CDN都可以很好地用于多站点。将内容中的所有静态资源URL重写到CDN,当页面加载时,将从CDN请求资源。如果CDN没有它们,它会从您的服务器上获取它们,存储它们,然后提供服务。
我使用Amazon CloudFront来实现这一点——它不是免费的,但持续一个月430000和3 GB的传输成本大约为80美分。
困难的部分只是将页面中的静态资源URL重写为CDN,这可以通过输出缓冲和regex magic轻松完成。Here\'s an example 我编写并在多个客户端网站上使用它——它的灵感来自Mark Jaquith\'s CDN plugin. 这两种方法都可以很好地用于multisite,或者您也可以自己使用--您应该这样做!真有趣!
我想有一个警告是,必须正确配置服务器,并发送合理的缓存相关头(Cache-Control
, Expires
, 等等)。ms-files.php
是turned off 默认情况下,WordPress 3.5sent some cache headers. 然而,一些源拉CDN允许您设置忽略源HTTP头的自定义过期规则。