用于用户身份验证 Web 应用程序的 nginx 代理缓存配置

用于用户身份验证 Web 应用程序的 nginx 代理缓存配置

我在 node + express + 护照 + mongo 数据库 + ejs 中有一个 Web 应用程序,并且配置了单个应用程序来处理所有子域。我使用 nginx 作为代理服务器,我需要并且必须使用代理缓存来减少节点服务器上的负载。

我有两个问题,

1. 我需要配置 nginx 代理缓存,因为它应该为各个子域创建不同的缓存。

2. 登录用户的内容将会有少许改变。我该如何处理呢?

请帮我解决这个问题。

提前致谢。

以下是配置

upstream backend_app_hosts {
    server localhost:3005 max_fails=0 fail_timeout=10s;
    server localhost:3006 max_fails=0 fail_timeout=10s;    
    keepalive 64;
}
proxy_cache_path  /var/www/cache levels=1:2 keys_zone=cache-1:8m max_size=1000m inactive=600m;

server {
    listen 80 ;
        charset UTF-8;
        client_max_body_size 16M;
        keepalive_timeout 20;

        server_name  *.domain.com;    


        location / {
          proxy_redirect off;
          proxy_set_header   X-Real-IP            $remote_addr;
          proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
          proxy_set_header   X-Forwarded-Proto $scheme;
          proxy_set_header   Host                   $http_host;
          proxy_set_header   X-NginX-Proxy    true;
          proxy_set_header   Connection "";
          proxy_http_version 1.1;          
          proxy_pass         http://backend_app_hosts/;

          proxy_cache cache-1;
          proxy_cache_valid  200 302  1440m;
          proxy_cache_valid  404      1m;

        }
}

相关内容