用Nginx做反向代理并缓存静态文件

Posted skiwnywh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Nginx做反向代理并缓存静态文件相关的知识,希望对你有一定的参考价值。

由于在北京公司每次访问美国那边的web服务器下载大量的静态资源,比如图片和js文件,等待时间非常长,

所以在北京这边用nginx反向代理美国的web服务器,然后将静态资源缓存到Nginx所在机器的磁盘上。

这样就减少了开发时的等待时间,下面是个例子:

 

http {

        ##                                                                                                                                                                       
        # Basic Settings                                                                                                                                                         
        ##                                                                                                                                                                       
        proxy_cache_path  /opt/cache  levels=1:2 keys_zone=STATIC:10m inactive=96h max_size=40g;

在http下面建一个server配置:

 

        server {
               listen 81;
               location ^~ / {
			proxy_pass             http://server.usa.com;
                        proxy_set_header       X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_cache            STATIC;
	        	proxy_cache_valid      200  10d;
                        proxy_cache_use_stale  error timeout invalid_header updating http_500 http_502 http_503 http_504;
               }
        }


 

以后都访问Nginx所在的机器既可。

 

 

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow




以上是关于用Nginx做反向代理并缓存静态文件的主要内容,如果未能解决你的问题,请参考以下文章

Nginx:Nginx介绍

在 Nginx 的反向代理中为特定静态文件添加缓存?

除了负载均衡,Nginx还可以做很多,限流缓存黑白名单等

Nginx实现反向代理负载均衡与静态缓存

Linux系统——Nginx基础

nginx静态资源缓存策略配置