Contents

nginx反向代理+缓存服务器配置

Contents

一直都说 Nginx 反向代理很简单,但是真要自己配置就很困难了,特别对我这种小白而言;今天折腾了一下午,终于成功,记录一下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
proxy_cache_path /opt/website/cache_path levels=1:2 keys_zone=blog:20m max_size=1g;  
   server {  
       listen       80;  
       server_name  www.ansen.org;  
       add_header X-Via $server_addr;  
       add_header X-Cache $upstream_cache_status;  
       #charset koi8-r;  
       #access_log  logs/host.access.log  main;  
       location / {  
               proxy_pass      http://b3log.ansen.org/;  
               proxy_set_header  X-Real-IP  $remote_addr;  
               proxy_cache blog;  
               proxy_cache_valid 200 10m;  
               expires 6h;  
       }  
}  

```需要注意的是,在proxy_cache_path中定义了keys_zone=blog,那么下面的proxy_cache也要相应的配置为blog  
以下是一些反向代理的配置,可选。```
proxy_set_header Host $host;  
client_max_body_size 10m; #允许客户端请求的最大单文件字节数  
client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数,  
proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)  
proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时)  
proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)  
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服务器传
```via:http://freeloda.blog.51cto.com/2033581/1288553