Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。7 I$ V6 G9 ^& z( d0 s
$ ?: c: u1 u1 P& b a- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则; E8 v4 U$ k# b4 G$ h) j, i
- client_body_buffer_size 512k;
0 f! A: B& s* I2 {& x" G - proxy_connect_timeout 5;) E! \: ^& H0 w' c. }1 |8 T4 M1 `" p
- proxy_read_timeout 60;) @8 S1 S( f3 ?! ^; W- y+ c; x
- proxy_send_timeout 5;2 m/ T2 l# K# r' |, z
- proxy_buffer_size 16k;- s& }' n x+ v5 h
- proxy_buffers 4 64k;
6 j3 I4 X; L. H+ Z7 k8 X1 {: t - proxy_busy_buffers_size 128k; o( U5 j# m2 I D0 x7 k. S( ?- G
- proxy_temp_file_write_size 128k;7 F8 _4 ]4 M6 p6 C4 [) F; [$ }
- proxy_temp_path /home/cache/temp;
# h9 v( F0 G9 S8 a8 B - # 配置临时目录+ r( ?2 o! r& X! | ?5 W
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;8 s6 S: ~4 T6 M
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
& h' W* R+ t o5 b0 F5 S6 s7 d$ v3 g! F: J+ j/ B5 ?" h& z
- mkdir /home/cache/path -p* F- d E- q: I+ K* z+ P9 D
- mkdir /home/cache/temp
- b# _7 F( p& B. F: C3 ? - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限8 G/ ~: f7 k0 E+ S3 M
, `- w; n/ p- r7 F, X: \% [" U$ ~" [2 x$ J7 |% X7 N
先创建一个“www.wdidc.net”虚拟主机
* j) _ w3 l8 {! h- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
* U) J, z' B% J+ y/ ?* V- ?+ ?- o
' }! l, `5 `3 p1 ]" \: z8 T删除之前系统生成的代码,填入以下代码,注意修改网址。 U- L. h e4 |$ d c3 @* }: ^& m
- server1 |: z) ^& ^- w8 q( u8 K9 N& x) N# b
- {
$ g/ L& ~ T. Z% _ O* f3 z - listen 80;! w! a- }: b6 R _
- server_name www.wdidc.net;
! Q! |- t. O6 T. F1 t3 e0 B
0 O0 W4 q. J2 U* a, X% C8 d- location / {
$ ^' m! d3 l4 Q% Q, Y: \: x - proxy_cache cache;/ D% }8 q) N+ N1 Z. A8 c8 x
- proxy_cache_valid 200 304 7d;. v2 g( a4 n( I
- #200 304状态缓存7天,按实际情况修改$ J: u" j1 T# J: x1 [- h1 F
- #其他状态缓存(如502 404)10秒8 g! I7 H8 L U- m
- proxy_cache_valid any 10s;3 s9 p7 ` ] B( t# p' f
- proxy_cache_key "$scheme$host$request_uri";) T/ x* @6 N, v s7 X6 m& R6 E
- #缓存key规则,用于自动清除缓存。
2 B: Z+ o5 }/ d& X# I% U - proxy_pass https://bbs.wdidc.net/;
. A* y- [7 _& x O' ], H6 } - proxy_redirect off;
' ~- o x$ v( r2 }6 D" ] - proxy_set_header X-Real-IP $remote_addr;
; Q& A6 ]8 l! y; v2 ~) ? - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;3 }* M0 D2 r3 i; Q( Q' Q* f
- #向后端传递访客ip6 N8 y# ^: ?6 @0 [- N8 v
- #limit_conn one 20;
7 p& j; b7 c& W7 p' t# c - #limit_rate 200k;- z/ `& ?6 T% ?4 ?- @5 i; C
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
1 @" T }. f( @$ Y8 H" ^! F - }( ]0 I8 b3 U- a" S1 e+ o
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
; v8 Y9 n+ N4 A+ J* Y/ ^: c! ^4 [2 I: ]4 O- _. s7 h- z0 l' v
- /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”表示正常,若有错误请根据错误提示排除问题。
: j: D' _2 H) R0 A+ g, m/ \/ `
+ D, @' Q& X! k- b6 Q* ^! u重启nginx; c i4 K7 i; \$ o' k2 B
0 Q4 B( F9 j3 Q
& }6 H; a0 o: T9 `9 H
# }; M7 S& D$ i
# \* B7 S0 x! @9 v |