qxwo 发表于 2017-4-21 09:58:10

求助nginx配置文件写发 XX不缓存

location / {
      proxy_pass   http://xx.ccc.com:9999;    #在这里设置一个代理,和upstream的名字一样
      #以下是一些反向代理的配置可删除
      proxy_redirect             off;
      #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
      proxy_set_header         Host $host;
      proxy_set_header         X-Real-IP $remote_addr;
      proxy_set_header         X-Forwarded-For $proxy_add_x_forwarded_for;
      client_max_body_size       10m; #允许客户端请求的最大单文件字节数
      client_body_buffer_size    128k; #缓冲区代理缓冲用户端请求的最大字节数
      proxy_connect_timeout      300; #nginx跟后端服务器连接超时时间(代理连接超时)
      proxy_send_timeout         300; #后端服务器数据回传时间(代理发送超时)
      proxy_read_timeout         300; #连接成功后,后端服务器响应时间(代理接收超时)
      proxy_buffer_size          4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
      proxy_buffers            4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
      proxy_busy_buffers_size    64k; #高负荷下缓冲大小(proxy_buffers*2)
      proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传
                proxy_cache cache;
                proxy_cache_valid 200 302 1h;
                expires 30d;
    }
这是现有配置文件,发现php和伪静态都缓存,能否伪静态的和php的不缓存呢?
伪静态地址包含listinfo

aboutyj 发表于 2017-4-21 10:24:29

本帖最后由 aboutyj 于 2017-4-21 10:37 编辑

因为你把cache配置写进了location / {}里面了,这不就变成了全站都缓存吗
用静态文件来示例:尝试这样写,同时buffer方面要根据实际需求来看要不要写进来。因为我buffer缓冲方面的全部写进总配置文件了,所以就没在这里加入。
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico|js|css)$ {
            proxy_pass http://yourupstream ;
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_cache cache_one;
            proxy_cache_valid 200 302 1h;
            proxy_cache_valid 301 1d;
            proxy_cache_valid any 1m;
            expires 30d;
    }

jshkk 发表于 2017-4-21 11:06:12

昨天刚好在查这个 先收藏了

qxwo 发表于 2017-4-21 11:58:20

aboutyj 发表于 2017-4-21 10:24
因为你把cache配置写进了location / {}里面了,这不就变成了全站都缓存吗
用静态文件来示例:尝试这样写, ...

谢谢,我研究下
页: [1]
查看完整版本: 求助nginx配置文件写发 XX不缓存