2010-01-25 14 views
1

是否可以配置lighttpd,以便在文件存在的情况下成功请求文件,但是如果该文件不存在,则会处理并重定向到例如cgi脚本的文件请求?是否可以使用lighttpd拦截不存在文件的请求?

我想要实现的是在磁盘上生成一组图像文件,这些文件由脚本生成并直接提供。根据请求,如果文件不存在,脚本将生成映像并将其保存到磁盘(以备将来的请求),然后直接提供映像或重定向回到同一个URL,这次将成功。我本质上是在磁盘上缓存生成的输出。

我目前有一个原型,其中脚本始终处理请求,读取并回显文件(如果存在),但我宁愿保存开销,并且如果可能的话直接使用lighttpd服务它。

回答

1

你可以两全其美。 Lighttpd将提供文件,如果你给它一个

X-Sendfile: path to file 

请参阅:http://redmine.lighttpd.net/wiki/1/X-LIGHTTPD-send-file。文档页面上有一个php示例。

server.error-handler-404 

配置选项的脚本,它会做你想要什么:

+0

非常感谢! – Joe 2010-01-25 14:03:17