Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。; U. g/ e* B: D( e7 v
4 p# ^( R/ s- }9 b
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则
3 O& i4 a+ l* ?* y7 R1 J- client_body_buffer_size 512k;- e. ^7 | O- M4 g4 \" F/ c; H. `
- proxy_connect_timeout 5;9 N7 f) l+ ]+ c4 I: Y
- proxy_read_timeout 60;
5 D4 O0 }" H9 M# _ - proxy_send_timeout 5;
$ e0 v: L( {8 @) k" Z3 O - proxy_buffer_size 16k;0 u* ^( z; b% g( D4 N |( g# U
- proxy_buffers 4 64k;+ [6 I4 O7 o: v- B4 a
- proxy_busy_buffers_size 128k;. L$ T9 G) v3 v; e' p- A
- proxy_temp_file_write_size 128k;$ n3 J7 m. Z4 k# P6 U8 f6 [' b5 u
- proxy_temp_path /home/cache/temp;1 \# F2 U7 d: B; W% _
- # 配置临时目录# t3 o' c( v; U3 a
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;0 o; |. U) c0 T9 V& A& ]
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
+ h5 n% W, G% g2 d2 l$ W
* N3 j/ ?# | k- m5 [- n/ y- mkdir /home/cache/path -p
( O* h$ b- w. K, C6 L - mkdir /home/cache/temp
/ N6 s0 S- |0 o, q& K- s* F) d - chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限
1 ?% `: c& t8 s" R' q5 X8 [# k3 Y" ]6 @0 g. F
! e$ n& X3 y+ l( Q7 Q% |" r
先创建一个“www.wdidc.net”虚拟主机9 d$ P' a( }4 ?: i! B) u7 z
- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。: L: d% A' N' @5 g: p
, w4 i& l F1 A+ b. [6 F
删除之前系统生成的代码,填入以下代码,注意修改网址。
1 Y, P2 `4 K7 v. c: j- server
% s7 ]! |& C" \3 r; g/ n - {. C- G* l3 s3 n$ }2 b. @
- listen 80;
) @$ w, h5 @% |" a8 e( t! W) A - server_name www.wdidc.net;
. m" n7 [' E8 g3 ^ - 7 r+ }3 A6 U1 A( L' F* M( C
- location / {" s8 O' z9 }4 m( j: ?$ ~
- proxy_cache cache;- E2 |# j4 e% r- @
- proxy_cache_valid 200 304 7d; q; i2 W" l! K( q# X( i! I' I
- #200 304状态缓存7天,按实际情况修改
# ?- Y y: Q& F6 k$ h6 } - #其他状态缓存(如502 404)10秒
" d# ]3 M1 z; j4 E( O5 j - proxy_cache_valid any 10s;0 ~! Q8 _& Q7 ~/ L
- proxy_cache_key "$scheme$host$request_uri";
- [- }# V: A! g o" q6 G8 h7 A/ Y6 [ - #缓存key规则,用于自动清除缓存。
6 |/ Y9 m: Z3 q1 E5 h; R1 I/ q - proxy_pass https://bbs.wdidc.net/;4 X4 M) c$ F5 w6 \ d2 j% m
- proxy_redirect off;
, F u" `" H' X/ S3 A4 Z - proxy_set_header X-Real-IP $remote_addr;* S, a" V2 d/ m9 b$ m) z1 C
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;. ?2 |. A6 p' z9 N+ s w4 `, H* |
- #向后端传递访客ip
' V* G* U& b! C# K6 f* r9 P( O - #limit_conn one 20;& M4 ~9 \+ |( r' z- |9 P
- #limit_rate 200k;
# R" S' v! E7 c - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#" D: Y2 W9 e" t& ]* t- q4 P9 [
- }. I O- o0 Y t# R1 ]
- }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。1 {! _: N4 L$ `, N, O4 o' r5 A( {2 _9 A
' x2 G0 p, Z a2 Y6 i: P0 T* \4 Q
- /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”表示正常,若有错误请根据错误提示排除问题。
! V- {4 q3 j9 p# j+ b
$ c) s' Y5 _- j% i( n重启nginx
- g6 p# e& c. a5 f1 y' Q ^/ r2 c0 F" {, I
% S" q8 A- [/ V% U: ~9 \% Y. h+ {) M3 o6 [) M' S T
) q2 R' ]7 U6 t5 a
|