- 论坛徽章:
- 0
|
最近有一个项目要用到nginx ssi功能,主要是实现动态的数据通过ssi静态化,这样提高网站的访问速度。这个配置主要参考SSI, Memcached and Nginx (plus Varnish, ESI and static generation) http://jimmyg.org/blog/2009/ssi-memcached-nginx.html这个文档,也就是说客户端第一次取数据的时候,先到memcache里面取,如果没有,就还回404的错误,然后再到后端的服务器上取数据,取数据的同时也往memcache里面写,这样第二次取相同数据的时候,就直接从memcache里面取了,下面是nginx的配置
upstream my_server {
server 192.168.0.172:8000;
}
server {
listen 80;
server_name 192.168.0.172;
index index.html index.htm index.jsp;
root /home/www;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
set $memcached_key $uri;
memcached_pass 127.0.0.1:11211;
default_type text/html;
error_page 404 = @fallback;
}
location @fallback {
ssi on;
ssi_silent_errors on;
proxy_set_header memcached_key $memcached_key;
proxy_pass http://my_server;
}
经过测试,nginx这种配置无法实现第二次页面的数据直接从memcache里面读,而是得新从数据库里面取数据,这个配置有什么错误吗,请高手解答。谢谢! |
|