我正在设置一个 nginx - apache 反向代理,其中 nginx 处理静态文件,apache 处理动态文件。我有一个搜索引擎,根据搜索参数,我可以直接将用户转发到他们正在寻找的页面或提供一组搜索结果。
我将这些结果缓存在 memcached 中
key:/search.cgi?q=foo
value: LOCATION:http://www.example.com/foo.html
和
key:/search.cgi?q=bar
value: CONTENT-TYPE: text/html
<html>
....
....
</html>
我可以使用 nginx 从 memcached 中提取“Content-type....”值并将其发送给用户,但我不太清楚如何处理像“Location...”这样的返回值。
我可以吗?
答案1
据我所知,nginx memcached 模块只能存储请求的原始内容,无论是 gif、html 还是其他什么。如果不破解模块,它将无法解释您的 LOCATION 参数。(不推荐)
要以这种方式使用 nginx,您必须使用 memcached 来存储 LOCATION 字段指定的页面的实际 html 内容,并将其存储在您的 memcached 中,或者以其他方式使用一组重定向。