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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129 |
user nginx; worker_processes 8 ; error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; pid /usr/local/webserver/nginx/nginx.pid; #Specifies the value for
maximum file descriptors that can be opened by thisprocess. worker_rlimit_nofile 65535 ; events { use epoll; worker_connections 65535 ; } http { include mime.types; default_type application/octet-stream; charset utf- 8 ; server_names_hash_bucket_size 128 ; client_header_buffer_size 32k; large_client_header_buffers 4
32k; client_max_body_size 300m; sendfile on; tcp_nopush on; keepalive_timeout 60 ; tcp_nodelay on; client_body_buffer_size 512k; proxy_connect_timeout 5 ; proxy_read_timeout 60 ; proxy_send_timeout 5 ; proxy_buffer_size 16k; proxy_buffers 4
64k; proxy_busy_buffers_size 128k; proxy_temp_file_write_size 128k; gzip on; gzip_min_length 1k; gzip_buffers 4
16k; gzip_http_version 1.1 ; gzip_comp_level 2 ; gzip_types text/plainapplication/x-javascript text/css application/xml; gzip_vary on; #注:proxy_temp_path和proxy_cache_path指定的路径必须在同一分区 proxy_temp_path /data0/proxy_temp_dir; #设置Web缓存区名称为cache_one,内存缓存空间大小为200MB, 1 天没有被访问的内容自动清除,硬盘缓存空间大小为5GB。 proxy_cache_path /data0/proxy_cache_dir levels= 1 : 2
keys_zone=cache_one:200m inactive=1d max_size=5g; server #此处为缓存服务器 { listen 80 ; server_name your_server_ip; location / { proxy_cache cache_one; #对不同的HTTP状态码设置不同的缓存时间 proxy_cache_valid 200
304
12h; #以域名、URI、参数组合成Web缓存的Key值,Nginx根据Key值哈希,存储缓存内容到二级缓存目录内 proxy_cache_key $host$uri$is_args$args; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; proxy_pass http: //your_server_ip:8080; #此处跳转到真实的图片服务器 log_format cache ‘***$time_local ‘ ‘$upstream_cache_status ‘ ‘Cache-Control: $upstream_http_cache_control ‘ ‘Expires: $upstream_http_expires ‘ ‘"$request" ($status) ‘ ‘"$http_user_agent" ‘ ; #定义日志格式(此日志格式可以显示hit miss等,显示缓存是否被击中,老版本默认可以,但是新版本,发现需要加上这个) access_log /var/log/nginx/cache.log cache; #使用这个日志格式 expires 1d; } location ~ /purge(/.*) { #设置只允许指定的IP或IP段才可以清除URL缓存。 allow 127.0 . 0.1 ; deny all; #proxy_cache_purge cache_one$host$ 1 $is_args$args; } #扩展名以.php、.jsp、.cgi结尾的动态应用程序不缓存。 location ~ .*\.(php|jsp|cgi)?$ { proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } access_log off; } #真实的图片服务器 server { listen 8080 ; server_name your_server_ip; location / { root /; } access_log /usr/local/webserver/nginx/logs/nginx_access.log; } } |
把上面的your_server_ip 改为自己服务器IP.就搞定了..然后输入 nginx -t 测试一下配置有没有问题..没问题就nginx -s reload.
然后你输入your_server_ip:8080/images/pic_name 你就可以访问到你的图片了.如果403什么的话,可以试试 chmod 777 your_images_folder.
有问题可以留言交流哦..noob nginx conf...O(∩_∩)O
原文地址:http://www.cnblogs.com/jarrah/p/3729313.html