Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。- @6 W/ B* @4 O8 S
4 ^+ a; q' h: n: r7 N: H
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
* ]; w6 h. E2 ^! o8 p5 s- client_body_buffer_size 512k;
: b# ]. k2 C& b0 \: m - proxy_connect_timeout 5;
3 ]$ R8 q1 i2 O6 L5 n+ s5 ] - proxy_read_timeout 60;. H* V2 \+ k$ Z$ _
- proxy_send_timeout 5;' d: C9 H% ^" G' x
- proxy_buffer_size 16k;
8 E; A+ z! D* d$ _& }* {# J - proxy_buffers 4 64k;+ w) i. f6 I2 y9 E* i/ g- s0 o
- proxy_busy_buffers_size 128k;
. @4 K! e3 \/ ?* J& Y - proxy_temp_file_write_size 128k;6 z. J1 A5 b1 F. J }
- proxy_temp_path /home/cache/temp;
# F3 n- v# Q6 S* m, g; Z9 O - # 配置临时目录; z3 A& B" A! P3 E( z+ d
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;
) b& u, M3 W% T - #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:- O5 X2 k" O4 |7 V
4 {5 i0 }) Z9 U" s) C) }8 k- mkdir /home/cache/path -p/ X# p4 I/ z; v) x' T: k6 j
- mkdir /home/cache/temp4 Y1 j1 x) h% z$ m# i4 m
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
, X# b- g" g& `% p; N9 D" ]3 ^( _! U* y6 R7 \# q: |6 D7 T1 @- X
5 X' X: n6 ]- ~% ~+ [先创建一个“www.wdidc.net”虚拟主机$ u! K% S& n5 Z9 ^( x
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
. H* w" B% r7 Z$ F8 c& X2 ?2 [2 Q) m8 ~! ?
删除之前系统生成的代码,填入以下代码,注意修改网址。
4 w: U# f8 P2 t+ j9 J) k5 d- server
9 q Q `7 M, u/ u% j0 `* z ?$ Z4 e5 _ - {/ q3 ^6 M) @) V# e3 u {/ I3 `
- listen 80;
5 Q& t- h6 ]# j. v; u - server_name www.wdidc.net;9 f4 P @0 G6 S5 C O/ i
$ S1 l$ ~7 [9 y- location / {) q9 _% A3 c" P# ]; z+ C: f
- proxy_cache cache;
9 j# K2 _ [6 T" |! j3 H7 }9 x - proxy_cache_valid 200 304 7d;
/ D* ~( L! ?; ^ - #200 304状态缓存7天,按实际情况修改
/ }/ `5 Y% V2 o9 z( @# O9 ]$ n: { G - #其他状态缓存(如502 404)10秒6 I) A2 {' t& v+ D
- proxy_cache_valid any 10s;. Q( D. T+ r% s# N' \1 ~
- proxy_cache_key "$scheme$host$request_uri";0 i: e# W2 l4 a2 {6 W4 W
- #缓存key规则,用于自动清除缓存。1 o* l7 i) g. s( Z* M8 V2 s+ I N% D
- proxy_pass https://bbs.wdidc.net/;! @1 W& B( E4 i. x# E% o; R
- proxy_redirect off;/ p' |$ _( `# r# O9 Y/ W1 [
- proxy_set_header X-Real-IP $remote_addr;4 I( E- l" ^, C0 a) L- A( _
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- R" J1 c. o- U3 M' m4 P5 H. g% k - #向后端传递访客ip' S2 M1 K, C9 R- U- M% v
- #limit_conn one 20;
' n: ^" z% C4 a7 R; \# u" i* T$ l8 T. @, ^ - #limit_rate 200k; r( m4 ]& k- A [5 y
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
* j! m8 Y+ R3 c2 t7 |& O - }: C% n) }& V U, ?
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。) r {" b: l) o7 l% G9 K
0 R( q& _, n, k) _, q* R- ~. ^
- /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”表示正常,若有错误请根据错误提示排除问题。' P' q6 }$ `6 z5 E F" E0 i
$ k; ~& V/ a4 h7 ]4 d) D# T/ c/ H
重启nginx' D4 r* R! q4 R; ^
$ `* C( }- }$ i8 i
% _6 `4 c* |: t4 @9 N; z1 n
- y' x& K7 o d
* G' n7 V Q* V9 D. n. T; V |