【发布时间】:2011-10-24 21:19:18
【问题描述】:
目前我已将 lighttpd 配置为 apache 的反向代理。 Lighttpd 监听公共 IP,而 apache 监听 127.0.0.1。 Lighttpd 使用配置将非静态内容传递给 apache
$HTTP["url"] !~ "\.(js|css|gif|jpg|png|ico|txt|swf|html|htm|gz)$" {
proxy.server = ( "" => (
( "host" => "127.0.0.1", "port" => 80 )))
expire.url = ( "/" => "access 5 minutes")
}
这个简单的设置适用于普通的 wordpress 安装。静态文件由 lighttpd 提供,而其他一切由 apache 提供。
我想把它提升到一个新的水平,所以我安装了 wp-super-cache 以便创建页面的缓存/html 版本。 wp-super-cache 插件已正确安装,并且对 htacess 文件的修改已正确应用。我使用了 wp-super-cache 的 mod_rewrite 模式,wordpress 的自定义永久链接结构是 /%category%/%postname%.html。一切都很好。正在创建和提供缓存/html 页面。只有一个小问题。仅当我在上述配置中删除 html 文件扩展时,它才会起作用。这意味着 apache 将提供缓存/html 文件,而不是 lighttpd。我想到的一种解决方案是在访问 html 文件时在 lighttpd 上设置类似的重写规则。我不知道它是否会起作用,但我还是搜索了它。我找到了http://tempe.st/2008/05/lightning-speed-wordpress-with-lighttpd-and-supercache-part-ii/(你可能需要谷歌缓存来访问它,因为它今天不工作,但昨天它确实)认为这可能是解决方案,但坏消息是我使用的是基于 rpm 的发行版和我使用的 rpm 存储库使用没有用于 lighttpd 的 mod_magnet。我搜索了其他提供带有 mod_magnet 的 lighttpd 的存储库,但没有找到。所以我不能使用我找到的一种解决方案,因为我的 lighttpd 没有 mod_magnet 功能。
我应该怎么做才能让 lighttpd 服务于 wp-super-cache 创建的缓存/html 文件?这可能吗?
谢谢!
【问题讨论】:
标签: apache wordpress caching lighttpd reverse-proxy