Nginx是一个高性能的HTTP和反向代理服务器,使用Nginx,只需要简单的几条命令保存到文件,即可实现简单、基本反向代理功能。 T! T8 {+ h# y, r
A# u* Q" ~1 H
- vim /usr/local/nginx/conf/nginx.conf
复制代码 修改nginx默认规则4 g, C- v$ U% }' y6 l
- client_body_buffer_size 512k;
" u' a/ B: Z3 S( o! j - proxy_connect_timeout 5;
8 P- _8 @# l0 g& h4 l - proxy_read_timeout 60;
/ Q6 B( ~* S4 P) @! v4 s0 c A - proxy_send_timeout 5;
+ C% v v9 W9 ^, y, L4 t - proxy_buffer_size 16k;; g1 {3 D; N# v( }
- proxy_buffers 4 64k;
# j6 H* z) \+ J/ Q - proxy_busy_buffers_size 128k;
* n& a7 S9 {8 U% \ - proxy_temp_file_write_size 128k;1 [4 ^5 [# G8 l) ?: q3 N/ o
- proxy_temp_path /home/cache/temp;9 N/ R+ d. I% ^1 E' L
- # 配置临时目录
8 v ?. i3 `& x) ?. l - proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m;; S) ?" a' c1 E% ^+ a. V6 V+ ^$ J( t
- #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
复制代码 vim /usr/local/nginx/conf/nginx.conf 查找:#limit_conn_zone $binary_remote_addr zone=perip:10m; 并在前面加入以上内容:
4 h+ M) _3 j+ d: Q5 g9 A
% P: t4 C* j$ {7 i P: a- mkdir /home/cache/path -p+ x9 @) w) @! U/ ~2 {
- mkdir /home/cache/temp/ H% R( g2 Y& `0 k2 K' }+ z
- chmod 755 -R /home/cache
复制代码 创建缓存目录,并赋予权限; S) W9 K% N% i- x% t. L9 O
+ N# T0 Z: x: j% t: F% _) j/ E4 l- s/ _
先创建一个“www.wdidc.net”虚拟主机
1 [* K( [* P8 ~9 ?9 E- cd /usr/local/nginx/conf/vhost
复制代码 进入LNMP一键包的虚拟主机配置文件夹,找到刚刚创建的“www.wdidc.net.conf”文件,并编辑。
7 M8 ]5 L; `' B* {' F, u9 D5 l( i; d* G8 Y ?+ {3 p
删除之前系统生成的代码,填入以下代码,注意修改网址。) R* Q# S& d e g5 N( B: f
- server
, v+ t/ A: ?/ {7 r - {9 N" Q6 E* A/ ]( \
- listen 80;
1 o" J' \. U0 n3 r; ?2 I* k; [( } - server_name www.wdidc.net;+ K) m$ y! e: b; y- B' Z
' y9 t& y1 u7 F: u! D7 i/ l- location / {
, y& Y2 O- G& p - proxy_cache cache;
" `7 g' H5 W9 x8 f9 h3 E5 f0 H+ U - proxy_cache_valid 200 304 7d;
" ^3 W" u/ g" z" Y8 `! w6 M& ?* j - #200 304状态缓存7天,按实际情况修改
; b% X1 v" Q8 R) c4 S0 N - #其他状态缓存(如502 404)10秒( y- `- t7 U' v; l6 M; H
- proxy_cache_valid any 10s;
2 M6 i3 ^5 w3 C- u" v! ? - proxy_cache_key "$scheme$host$request_uri";- F$ F* V6 \: G: X
- #缓存key规则,用于自动清除缓存。; q& G2 f7 o# G+ B4 h2 `+ t- p6 b/ A
- proxy_pass https://bbs.wdidc.net/;
; \7 [7 S; l7 l% b3 G9 ]: X - proxy_redirect off;+ k1 L2 F) ?$ Z( \
- proxy_set_header X-Real-IP $remote_addr;5 a. Z* Y9 L7 ?# }+ |0 b1 \
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;) @$ F& D# T& @! U$ ~4 I" W
- #向后端传递访客ip
1 h, p: O2 l( s; v - #limit_conn one 20;
! a* v7 M/ Z- V: D9 n& ], y - #limit_rate 200k;8 `9 X' \: Q/ L4 `! ]6 @
- #20为单ip连接数,200k为单ip连接速度,若要开启请去掉#
0 K4 A; `3 f0 G% ` x) | - }
% o" k. m, b7 a( y! L6 W - }
复制代码 以上代码,表示使用“www.wdidc.net”反向代理“bbs.wdidc.net”,然后保存文件即可。
- n/ p; X$ U1 T" T* Y% Q- _# X: C: ?+ c( s& D* {
- /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”表示正常,若有错误请根据错误提示排除问题。" `1 d# O% }: ~. u/ j" e
0 m- h8 v& z2 Z7 n重启nginx
/ q& y) }0 \5 ^2 ^+ V8 `* B; g4 `; ~6 o
" e1 @: S' @0 J4 B$ T5 f$ f s$ A
% _/ s0 ?" f! ^8 @4 z, j
6 W& D/ I- u# A) g* b |