Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。9 x4 V. D7 R$ Z: o1 }$ W
0 I3 Z# ~0 s8 r% c
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则; ]& f( [" M8 N
- client_body_buffer_size 512k;
# |+ c* k- t- l0 |" H! e2 N - proxy_connect_timeout 5;9 c. y {9 l: J1 h, S, I" f6 @% `* D
- proxy_read_timeout 60;) U. U7 l7 Q% Q
- proxy_send_timeout 5;
( L1 ^" [8 ?$ F, h0 o0 B J - proxy_buffer_size 16k;
( `! R9 w+ F, }( N; A2 ~ \ - proxy_buffers 4 64k;9 F) N* n* J- y9 p, T5 d, h7 r
- proxy_busy_buffers_size 128k;4 t1 b5 [5 T* ]
- proxy_temp_file_write_size 128k;
: D2 p9 Y5 C6 j/ e8 W7 ` - proxy_temp_path /home/cache/temp;
2 L2 ]9 i/ q# E: {' |0 Z0 ^; f - # 配置临时目录9 R/ @+ V9 M7 d- C
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
0 p! {) K' N8 h - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:3 s" V' o! u, e+ I: ?* ]1 M
) Y' s4 P0 S6 H5 {+ ?
- mkdir /home/cache/path -p" M9 [0 R+ N' r! D2 f+ R
- mkdir /home/cache/temp
7 b( u: i2 n& N* |! \" f - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
$ w3 J( \0 w) c) S. q
3 a s# @, H9 Y
a; ?+ X9 Y0 a/ ]. `* z先创建一个“www.wdidc.net”虚拟主机% C/ N3 h, c. i4 }& d
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。6 V1 U4 a( W+ `0 b, y3 x. a
" A; b9 W3 x% z: L- f删除之前系统生成的代码,填入以下代码,注意修改网址。+ s7 H5 @, G9 x- I
- server% c$ p1 K4 _. C6 K
- {- T7 N, p% c8 G5 c, o5 t# Y
- listen 80;6 P$ h. t/ W1 W. F% Z
- server_name www.wdidc.net;
0 m1 i6 j" e6 h# y
1 ^. m5 m: n8 z) w& V+ c- location / {6 k: A! J' A9 O' g6 M1 }- ^5 Q
- proxy_cache cache;
/ w- m& ~, K- I D, x - proxy_cache_valid 200 304 7d;
& s. Z- S, _) U2 |/ w - #200 304状态缓存7天,按实际情况修改
, A0 s( M% O5 w+ o, q - #其他状态缓存(如502 404)10秒
/ p9 |: w1 X$ q8 }. G! l z - proxy_cache_valid any 10s;
: F4 J, \ Q# E1 W - proxy_cache_key "$scheme$host$request_uri";
8 h: b8 @. z H J6 q# d: S& L& k- g - #缓存key规则,用于自动清除缓存。% l1 Q: W! y# ^; t
- proxy_pass https://bbs.wdidc.net/;
: G8 ]1 |$ @7 D- p; h) \ - proxy_redirect off;
$ w5 _" V! D+ ?: b+ `0 a - proxy_set_header X-Real-IP $remote_addr; |' t9 v" G# B, U2 J! d
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @& e7 E2 d6 M b
- #向后端传递访客ip5 @, |' C3 i" Y. Q: ?
- #limit_conn one 20;; K0 n0 n+ I% F9 ?- k' @9 c" @
- #limit_rate 200k; K5 W. R6 o1 ^9 u9 s
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#& O3 W' U& T* I |; ] r
- }
: ~, H' V- I' ?' h1 w - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
; o5 X+ }) a1 O" L3 _8 q& x. ~5 e3 x$ Q$ S3 K
- /usr/local/nginx/sbin/nginx -t
复制代码 测试:若提示:“the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok configuration file /usr/local/nginx/conf/nginx.conf test is successful”表示正常,若有错误请根据错误提示排除问题。/ {7 d, _ i9 ?0 O, a9 W
k/ I1 v4 u- P! c& [! h. j6 V
重启nginx
3 p4 E! D& _) S' Z9 u
+ s, f* ] C C% q* r0 `) d1 B! c) v, Y, @
9 w7 P) O0 s8 e9 h! n( ?( ?; a
x, B. P; D% _' i ` |