Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。6 ]8 W$ z- L$ K* C+ g" _
n& Y' C- r' Y' D3 L6 a
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则- ]3 `, ^% Y' f6 b# b2 n
- client_body_buffer_size 512k;
0 r- v, B' g9 K- O - proxy_connect_timeout 5;
( w+ n% Q: t5 G5 o$ N - proxy_read_timeout 60;+ G& b( Z- T7 T; E0 _: Q% r) ~
- proxy_send_timeout 5;
O& A2 g2 c$ @ - proxy_buffer_size 16k;, `& X) {* K- R3 H( J$ s
- proxy_buffers 4 64k;
% ^. l5 c- u9 I - proxy_busy_buffers_size 128k;
0 q; Q" [6 M0 M$ K& x* w0 c - proxy_temp_file_write_size 128k;" X- ]. K: k; Y' q" H
- proxy_temp_path /home/cache/temp;
1 s5 W8 p% s9 r$ S, c+ d! ] - # 配置临时目录9 S' N8 b' q( P( I6 i5 Z
- proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;' t' p1 t" w, t# {# C
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:: b& n( X$ p1 H5 c1 v
3 f5 o: o3 N: c) x. r5 s+ Q
- mkdir /home/cache/path -p& [( t( J; _% F% B; u9 w ]6 q
- mkdir /home/cache/temp# }8 H7 T/ ]( A- _# D
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限) ~+ }+ \- a5 O, k' b4 E5 `7 j+ J
' A* [* i ~) m0 D- ~% R8 n
; r' |/ V6 m) @% N先创建一个“www.wdidc.net”虚拟主机
% b: t1 S* {8 Z. Y5 o6 N5 z" G( M a- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。4 h! m) b! e: [+ K
" A2 G; K7 y. F7 X9 \0 n7 V删除之前系统生成的代码,填入以下代码,注意修改网址。9 p- ^( [( q2 \/ B, n1 m
- server' v& R0 A: h( d+ _( o- V5 m
- {
% }- x+ o4 ]/ {6 [ - listen 80;
( t& O/ {* F, D2 Z3 a - server_name www.wdidc.net;0 \$ \9 M/ O* d/ f+ R) G& S7 y
- 5 S6 e; {9 s$ I. ^+ a9 A) r
- location / {
; p$ m) b; t. `9 ]/ q - proxy_cache cache;
/ x5 B6 a3 C/ }5 S0 \* k9 H8 @' `4 z - proxy_cache_valid 200 304 7d;' \- K& e; r/ ~4 c
- #200 304状态缓存7天,按实际情况修改
. a6 y$ }* U& A$ g; s/ J. H$ s( b - #其他状态缓存(如502 404)10秒
- g7 \+ z- S+ t* J( Y' ^ - proxy_cache_valid any 10s;
z5 [! ]7 b2 @% v" x, ^. r/ D - proxy_cache_key "$scheme$host$request_uri";
. W1 [7 Z+ n. n. h - #缓存key规则,用于自动清除缓存。7 @% ?8 J4 q: _" A0 c0 O
- proxy_pass https://bbs.wdidc.net/;
) N9 n9 q8 r! D% X - proxy_redirect off;
0 r9 y% C4 g1 v* x - proxy_set_header X-Real-IP $remote_addr;' v- f2 U& Q0 J9 c2 U6 C2 c0 N& n
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;* a7 }; s$ ~) K/ v, `5 g) O
- #向后端传递访客ip6 g% G% O3 `9 z# ?% o j
- #limit_conn one 20;
* q5 c/ h) _( @ - #limit_rate 200k;
. U6 I& m: D. c - #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
" H7 h* {5 W/ i; E - }
9 H8 r b2 c: w) u - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。& l; e1 Y5 D2 r
+ u5 `) W8 j% e, D/ J
- /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 {3 ~: J1 ]# P1 v
4 K; q# ~- u" x) b重启nginx
( o+ O6 s( Q, w4 ?* N
/ c; r7 O/ ?* T7 M8 ^; t4 q' ?! b9 D/ U
# X) k2 a' j) n' o) }
3 F) L# C6 h2 W' X4 l
|